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

int glob_testdir(char *dir,int flags)

{
  char cVar1;
  int iVar2;
  int iVar3;
  long *plVar4;
  stat *psVar5;
  stat *psVar6;
  uint uVar7;
  size_t sVar8;
  int *piVar9;
  wchar_t *pwVar10;
  ulong uVar11;
  int iVar12;
  int iVar13;
  wchar_t *pathname;
  stat *psVar14;
  stat *unaff_s2;
  undefined1 *puVar15;
  long *plVar16;
  undefined *puVar17;
  code *pcVar18;
  code *pcVar19;
  int *piStack_218;
  undefined4 uStack_214;
  wchar_t *pwStack_210;
  code *pcStack_20c;
  code *pcStack_1f8;
  wchar_t *pwStack_1f0;
  undefined4 uStack_1ec;
  undefined4 uStack_1e8;
  int iStack_1e4;
  stat *psStack_1e0;
  stat *psStack_1dc;
  long *plStack_1d8;
  code *pcStack_1d4;
  undefined *puStack_1c0;
  stat *psStack_1b4;
  int iStack_1b0;
  int iStack_1ac;
  int iStack_1a8;
  uint uStack_1a4;
  stat *psStack_1a0;
  stat *psStack_19c;
  stat sStack_198;
  wchar_t *pwStack_f4;
  stat finfo;
  
  iVar2 = *(int *)PTR___stack_chk_guard_0015858c;
  psVar6 = &finfo;
  if ((flags & 0x10U) == 0) {
    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);
  }
  else {
    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);
  }
  if (iVar3 < 0) {
    iVar3 = -1;
  }
  else if ((finfo.st_mode & 0xf000) == 0xa000) {
    iVar3 = -2;
  }
  else {
    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);
  }
  if (iVar2 == *(int *)PTR___stack_chk_guard_0015858c) {
    return iVar3;
  }
  puVar17 = PTR___stack_chk_fail_0015853c;
  (*(code *)PTR___stack_chk_fail_0015853c)();
  puStack_1c0 = puVar17 + 0x80e64;
  pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0);
  iStack_1b0 = iVar2;
  psStack_19c = (stat *)dir;
  iVar2 = (**(code **)(puVar17 + 0x7ad68))();
  if (iVar2 == 0) {
    psVar14 = (stat *)dir;
    if (((uint)psVar6 & 1) == 0) {
      psStack_1a0 = psStack_19c;
      psVar6 = (stat *)0x0;
    }
    else {
      uVar11 = ((stat *)dir)->st_dev;
      if (uVar11 == 0) {
        psStack_1a0 = psStack_19c;
        psVar6 = (stat *)dir;
      }
      else {
        unaff_s2 = (stat *)0x4000;
        do {
          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);
          psVar14 = &sStack_198;
          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {
            uVar11 = ((stat *)dir)->st_dev;
            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);
            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);
            psVar6 = (stat *)dir;
            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;
            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);
            *puVar15 = 0x2f;
            puVar15[1] = 0;
            ((stat *)dir)->st_dev = (ulong)psStack_1a0;
          }
          dir = (char *)((stat *)dir)->st_pad1;
          uVar11 = *(ulong *)dir;
        } while (uVar11 != 0);
        psStack_1a0 = psStack_19c;
        psVar6 = (stat *)dir;
      }
    }
  }
  else {
    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);
    psVar14 = (stat *)psStack_19c->st_dev;
    if (psVar14 == (stat *)0x0) {
      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);
      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;
      iVar3 = 0;
    }
    else {
      plVar16 = psStack_19c->st_pad1;
      plVar4 = plVar16;
      iVar3 = 0;
      do {
        iVar13 = iVar3;
        iVar12 = *plVar4;
        plVar4 = plVar4 + 1;
        iVar3 = iVar13 + 1;
      } while (iVar12 != 0);
      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);
      psStack_1a0 = psVar5;
      if (psVar5 == (stat *)0x0) goto LAB_000dd804;
      iVar12 = 0;
      iStack_1ac = iVar2 + 3;
      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;
      uStack_1a4 = (uint)psVar6 & 1;
      unaff_s2 = psVar5;
      do {
        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);
        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);
        unaff_s2->st_dev = (ulong)psVar6;
        psStack_1b4 = unaff_s2;
        if (psVar6 == (stat *)0x0) {
          if (iVar12 != 0) {
            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);
            return iVar2;
          }
          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);
          return iVar2;
        }
        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);
        if (cVar1 != '/') {
          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;
        }
        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);
        if (((uStack_1a4 != 0) &&
            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),
            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {
          uVar11 = psStack_1b4->st_dev;
          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);
          psVar6 = (stat *)(uVar11 + iVar3);
          *(char *)&psVar6->st_dev = '/';
          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;
        }
        iVar12 = iVar12 + 1;
        iVar3 = iVar12 * 4;
        psVar14 = (stat *)*plVar16;
        unaff_s2 = (stat *)unaff_s2->st_pad1;
        plVar16 = plVar16 + 1;
      } while (psVar14 != (stat *)0x0);
    }
    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;
    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);
    if (psStack_19c->st_dev != 0) {
      plVar4 = psStack_19c->st_pad1;
      do {
        (*pcVar18)();
        psVar6 = (stat *)(plVar4 + 1);
        iVar2 = *plVar4;
        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);
        plVar4 = (long *)psVar6;
      } while (iVar2 != 0);
    }
    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);
  }
LAB_000dd804:
  if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {
    return (int)psStack_1a0;
  }
  pcVar18 = *(code **)(puStack_1c0 + -0x6004);
  pcVar19 = dequote_pathname;
  pathname = pwStack_f4;
  (*pcVar18)();
  pcStack_1f8 = pcVar18 + 0x80a74;
  iStack_1e4 = **(int **)(pcVar18 + 0x7aac0);
  psStack_1e0 = psVar6;
  psStack_1dc = psVar14;
  plStack_1d8 = (long *)unaff_s2;
  pcStack_1d4 = pcVar19;
  uVar7 = (**(code **)(pcVar18 + 0x7aa14))();
  pwVar10 = pathname;
  if (uVar7 < 2) {
    udequote_pathname((char *)pathname);
  }
  else {
    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();
    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);
    if (sVar8 == 0xffffffff) {
      udequote_pathname((char *)pathname);
    }
    else {
      iVar13 = 0;
      iVar12 = 0;
      iVar3 = 0;
      do {
        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;
        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;
        if (pwStack_1f0[iVar3] == 0x5c) {
          iVar2 = FUN_000ddb8c();
          return iVar2;
        }
        iVar12 = iVar12 + 1;
        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];
        piVar9 = pwStack_1f0 + iVar3;
        iVar13 = iVar13 + 4;
        iVar3 = iVar3 + 1;
      } while (*piVar9 != 0);
      if (pwStack_1f0 != (wchar_t *)0x0) {
LAB_000ddbf8:
        pwStack_1f0[iVar12] = 0;
      }
LAB_000ddc04:
      uStack_1ec = 0;
      uStack_1e8 = 0;
      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);
      pathname = (wchar_t *)((int)pathname + iVar2);
      *(uchar *)pathname = '\0';
      (**(code **)(pcStack_1f8 + -0x5f94))();
      pwVar10 = pwStack_1f0;
    }
  }
  if (iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)) {
    return **(int **)(pcStack_1f8 + -0x5fb4);
  }
  pcVar18 = *(code **)(pcStack_1f8 + -0x6004);
  pcVar19 = glob_pattern_p;
  (*pcVar18)();
  uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4);
  pwStack_210 = pathname;
  pcStack_20c = pcVar19;
  iVar2 = (**(code **)(pcVar18 + 0x7a848))();
  if (iVar2 != 1) {
    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);
    if (sVar8 == 0xffffffff) {
      internal_glob_pattern_p((uchar *)pwVar10);
      iVar2 = FUN_000dddfc();
      return iVar2;
    }
    do {
      iVar2 = *piStack_218;
      piStack_218 = piStack_218 + 1;
      if (iVar2 == 0) {
        iVar2 = (**(code **)(pcVar18 + 0x7a914))();
        return iVar2;
      }
      uVar7 = iVar2 - 0x21;
    } while (0x3c < uVar7);
                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    iVar2 = (*(pcVar18 +
              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()
    ;
    return iVar2;
  }
  internal_glob_pattern_p((uchar *)pwVar10);
  iVar2 = FUN_000dddfc();
  return iVar2;
}



/* WARNING: Removing unreachable block (ram,0x000ddde0) */
/* WARNING: Type propagation algorithm not settling */

int ******* FUN_000dd618(int *******param_1,uint param_2)

{
  bool bVar1;
  char cVar2;
  int iVar3;
  int *******pppppppiVar4;
  uint uVar5;
  int *******pppppppiVar6;
  int *******pppppppiVar7;
  undefined1 *puVar8;
  undefined4 uVar9;
  int ******ppppppiVar10;
  int *piVar11;
  int iVar12;
  int *piVar13;
  uint uVar14;
  int *piVar15;
  int ******ppppppiVar16;
  int iVar17;
  uint uVar18;
  int ******ppppppiVar19;
  uint uVar20;
  int ******ppppppiVar21;
  int *******pppppppiVar22;
  int iVar23;
  int *******__quote;
  int iVar24;
  int *******pppppppiVar25;
  int *******unaff_s2;
  char *pcVar26;
  int *******unaff_s3;
  int *******pppppppiVar27;
  int *******unaff_s4;
  int *******unaff_s5;
  int *******pppppppiVar28;
  char *pcVar29;
  int *******unaff_s6;
  uint uVar30;
  undefined4 *puVar31;
  int *******unaff_s7;
  undefined *puVar32;
  code *pcVar33;
  undefined1 *puVar34;
  int ******unaff_s8;
  code *pcVar35;
  undefined1 auStack_360 [8];
  undefined1 auStack_358 [8];
  int ******ppppppiStack_350;
  undefined1 *puStack_34c;
  code *pcStack_348;
  int *******pppppppiStack_340;
  uint uStack_33c;
  uint uStack_338;
  code *pcStack_334;
  uint uStack_330;
  int iStack_32c;
  undefined4 uStack_328;
  int *******pppppppiStack_324;
  uint uStack_320;
  code *pcStack_31c;
  int iStack_318;
  int iStack_314;
  int *******pppppppiStack_310;
  uint uStack_30c;
  int iStack_308;
  int *******pppppppiStack_304;
  undefined1 auStack_300 [164];
  char *pcStack_25c;
  int *******pppppppiStack_258;
  int *******pppppppiStack_254;
  int *******pppppppiStack_250;
  int *******pppppppiStack_24c;
  int *******pppppppiStack_248;
  int *******pppppppiStack_244;
  int *******pppppppiStack_240;
  int *******pppppppiStack_23c;
  int ******ppppppiStack_238;
  code *pcStack_234;
  code *pcStack_220;
  int *******pppppppiStack_218;
  int *******pppppppiStack_214;
  int *******pppppppiStack_210;
  code *pcStack_20c;
  code *pcStack_1f8;
  int *******pppppppiStack_1f0;
  undefined4 uStack_1ec;
  undefined4 uStack_1e8;
  int *******pppppppiStack_1e4;
  int *******pppppppiStack_1e0;
  int *******pppppppiStack_1dc;
  int *******pppppppiStack_1d8;
  code *pcStack_1d4;
  undefined *puStack_1c0;
  int *******pppppppiStack_1b4;
  int iStack_1b0;
  int iStack_1ac;
  int iStack_1a8;
  uint uStack_1a4;
  int *******pppppppiStack_1a0;
  int *******pppppppiStack_19c;
  int ******appppppiStack_198 [6];
  uint uStack_180;
  int *******pppppppiStack_f4;
  int ******appppppiStack_b0 [6];
  uint local_98;
  int local_c;
  
  local_c = *(int *)PTR___stack_chk_guard_0015858c;
  pppppppiVar7 = appppppiStack_b0;
  if ((param_2 & 0x10) == 0) {
    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);
  }
  else {
    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);
  }
  if (iVar3 < 0) {
    pppppppiVar4 = (int *******)0xffffffff;
  }
  else if ((local_98 & 0xf000) == 0xa000) {
    pppppppiVar4 = (int *******)&SUB_fffffffe;
  }
  else {
    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);
  }
  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {
    return pppppppiVar4;
  }
  iVar3 = local_c;
  puVar32 = PTR___stack_chk_fail_0015853c;
  (*(code *)PTR___stack_chk_fail_0015853c)();
  puStack_1c0 = puVar32 + 0x80e64;
  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);
  pppppppiVar25 = param_1;
  iStack_1b0 = iVar3;
  pppppppiStack_19c = param_1;
  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();
  if (pppppppiVar4 == (int *******)0x0) {
    pppppppiVar6 = param_1;
    pppppppiVar4 = unaff_s7;
    if (((uint)pppppppiVar7 & 1) == 0) {
      pppppppiStack_1a0 = pppppppiStack_19c;
      pppppppiVar7 = (int *******)0x0;
      pppppppiVar22 = pppppppiVar25;
    }
    else {
      ppppppiVar21 = *param_1;
      if (ppppppiVar21 == (int ******)0x0) {
        pppppppiStack_1a0 = pppppppiStack_19c;
        pppppppiVar22 = (int *******)0x0;
        pppppppiVar7 = param_1;
      }
      else {
        unaff_s2 = (int *******)0x4000;
        unaff_s3 = (int *******)0x2f;
        do {
          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);
          pppppppiVar6 = appppppiStack_198;
          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {
            unaff_s5 = (int *******)*param_1;
            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);
            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);
            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);
            pppppppiVar7 = param_1;
            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;
            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);
            *(undefined1 *)unaff_s4 = 0x2f;
            *(undefined1 *)((int)unaff_s4 + 1) = 0;
            *param_1 = (int ******)pppppppiStack_1a0;
          }
          param_1 = param_1 + 1;
          ppppppiVar21 = *param_1;
        } while (ppppppiVar21 != (int ******)0x0);
        pppppppiStack_1a0 = pppppppiStack_19c;
        pppppppiVar22 = (int *******)0x0;
        pppppppiVar7 = param_1;
      }
    }
  }
  else {
    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);
    pppppppiVar6 = (int *******)*pppppppiStack_19c;
    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);
    if (pppppppiVar6 == (int *******)0x0) {
      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);
      pppppppiVar22 = pppppppiVar25;
      if (pppppppiStack_1a0 != (int *******)0x0) {
        iVar3 = 0;
LAB_000dda68:
        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;
        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);
        if (*pppppppiStack_19c != (int ******)0x0) {
          pppppppiVar22 = pppppppiStack_19c + 1;
          do {
            (*pcVar33)();
            pppppppiVar7 = pppppppiVar22 + 1;
            ppppppiVar21 = *pppppppiVar22;
            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);
            pppppppiVar22 = pppppppiVar7;
          } while (ppppppiVar21 != (int ******)0x0);
        }
        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);
        pppppppiVar22 = pppppppiVar25;
      }
    }
    else {
      unaff_s4 = pppppppiStack_19c + 1;
      pppppppiVar25 = unaff_s4;
      pppppppiVar22 = (int *******)0x0;
      do {
        pppppppiVar27 = pppppppiVar22;
        ppppppiVar21 = *pppppppiVar25;
        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);
        pppppppiVar25 = pppppppiVar25 + 1;
      } while (ppppppiVar21 != (int ******)0x0);
      pppppppiVar27 =
           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);
      pppppppiStack_1a0 = pppppppiVar27;
      if (pppppppiVar27 != (int *******)0x0) {
        unaff_s3 = (int *******)0x0;
        iStack_1ac = (int)pppppppiVar4 + 3;
        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;
        uStack_1a4 = (uint)pppppppiVar7 & 1;
        unaff_s8 = (int ******)appppppiStack_198;
        unaff_s2 = pppppppiVar27;
LAB_000dd968:
        pppppppiVar25 = pppppppiVar6;
        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);
        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);
        *unaff_s2 = (int ******)pppppppiVar7;
        pppppppiStack_1b4 = unaff_s2;
        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;
        if (unaff_s3 != (int *******)0x0) {
          unaff_s3 = pppppppiVar27 + (int)unaff_s3;
          do {
            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);
            pppppppiVar27 = pppppppiVar27 + 1;
          } while (unaff_s3 != pppppppiVar27);
        }
        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);
        pppppppiStack_1a0 = (int *******)0x0;
        pppppppiVar6 = pppppppiVar25;
        unaff_s5 = pppppppiVar27;
      }
    }
  }
LAB_000dd804:
  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {
    return pppppppiStack_1a0;
  }
  pcVar33 = *(code **)(puStack_1c0 + -0x6004);
  pcVar35 = FUN_000ddacc;
  pppppppiVar25 = pppppppiStack_f4;
  (*pcVar33)();
  pcStack_1f8 = pcVar33 + 0x80a74;
  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);
  pppppppiStack_1e0 = pppppppiVar7;
  pppppppiStack_1dc = pppppppiVar6;
  pppppppiStack_1d8 = unaff_s2;
  pcStack_1d4 = pcVar35;
  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();
  pppppppiVar7 = pppppppiVar25;
  if (uVar5 < 2) {
    FUN_000dce8c();
  }
  else {
    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();
    pppppppiVar22 = (int *******)0x0;
    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);
    unaff_s2 = pppppppiStack_1f0;
    if (iVar3 == -1) {
      FUN_000dce8c();
    }
    else {
      iVar24 = 0;
      iVar23 = 0;
      iVar3 = 0;
      do {
        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;
        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;
        iVar17 = iVar3;
        iVar12 = iVar3 + 1;
        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {
          iVar17 = iVar3 + 1;
          iVar12 = iVar3 + 2;
        }
        iVar3 = iVar12;
        iVar23 = iVar23 + 1;
        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];
        iVar24 = iVar24 + 4;
      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);
      if (pppppppiStack_1f0 != (int *******)0x0) {
LAB_000ddbf8:
        pppppppiStack_1f0[iVar23] = (int ******)0x0;
      }
LAB_000ddc04:
      uStack_1ec = 0;
      uStack_1e8 = 0;
      pppppppiVar22 = (int *******)&pppppppiStack_1f0;
      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);
      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);
      *(undefined1 *)pppppppiVar25 = 0;
      pppppppiVar7 = pppppppiStack_1f0;
      (**(code **)(pcStack_1f8 + -0x5f94))();
    }
  }
  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {
    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);
  }
  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);
  pcVar35 = glob_pattern_p;
  (*pcVar33)();
  pcStack_220 = pcVar33 + 0x808a8;
  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);
  pppppppiStack_210 = pppppppiVar25;
  pcStack_20c = pcVar35;
  iVar3 = (**(code **)(pcVar33 + 0x7a848))();
  if (iVar3 == 1) {
    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);
  }
  else {
    pppppppiVar22 = (int *******)0x0;
    pppppppiVar27 = pppppppiVar7;
    iVar3 = xdupmbstowcs(&pppppppiStack_218);
    if (iVar3 == -1) {
      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);
      pppppppiVar7 = pppppppiVar27;
    }
    else {
      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);
      while( true ) {
        ppppppiVar21 = *pppppppiStack_218;
        pppppppiStack_218 = pppppppiStack_218 + 1;
        if (ppppppiVar21 == (int ******)0x0) break;
        uVar5 = (int)ppppppiVar21 - 0x21;
        if (uVar5 < 0x3d) {
                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */
                    /* WARNING: Treating indirect jump as call */
          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();
          return pppppppiVar7;
        }
      }
      pppppppiVar25 = (int *******)0x0;
      (**(code **)(pcStack_220 + -0x5f94))();
      pppppppiVar7 = pppppppiStack_218;
    }
  }
  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {
    return pppppppiVar25;
  }
  pcVar33 = *(code **)(pcStack_220 + -0x6004);
  pcVar35 = glob_vector;
  pppppppiVar27 = pppppppiStack_214;
  (*pcVar33)();
  pcStack_348 = pcVar33 + 0x80714;
  puVar34 = auStack_358;
  puVar8 = auStack_358;
  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);
  __quote = (int *******)0x0;
  pppppppiVar28 = unaff_s5;
  pppppppiStack_304 = pppppppiVar22;
  pppppppiStack_258 = pppppppiVar25;
  pppppppiStack_254 = pppppppiVar6;
  pppppppiStack_250 = unaff_s2;
  pppppppiStack_24c = unaff_s3;
  pppppppiStack_248 = unaff_s4;
  pppppppiStack_244 = unaff_s5;
  pppppppiStack_240 = unaff_s6;
  pppppppiStack_23c = pppppppiVar4;
  ppppppiStack_238 = unaff_s8;
  pcStack_234 = pcVar35;
  if ((pppppppiVar27 == (int *******)0x0) ||
     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {
    __quote = (int *******)0x0;
    iVar3 = FUN_000dd618(pppppppiVar22);
    if (iVar3 < 0) {
      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
      pcVar33 = pcStack_348;
      goto LAB_000de914;
    }
    puVar34 = auStack_360;
    pppppppiVar25 = &ppppppiStack_350;
    ppppppiStack_350 = (int ******)0x0;
    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);
    bVar1 = puVar8 == (undefined1 *)0x0;
    if (bVar1) {
      uStack_30c = 1;
      pppppppiVar25 = (int *******)0x0;
    }
    else {
      puStack_34c = puVar8;
      *puVar8 = 0;
      uStack_30c = 0;
    }
    uStack_30c = (uint)bVar1;
    pppppppiVar28 = (int *******)(uint)!bVar1;
    pcVar33 = pcStack_348;
    puVar8 = auStack_360;
    if (pppppppiVar27 != (int *******)0x0) {
      unaff_s2 = (int *******)0x0;
      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;
      iStack_314 = 1;
      puVar34 = auStack_360;
      goto LAB_000ddf3c;
    }
LAB_000ddefc:
    puVar34 = puVar8;
    unaff_s2 = (int *******)0x0;
    goto LAB_000ddf00;
  }
  iStack_314 = 0;
  uStack_30c = 0;
  pppppppiVar25 = (int *******)0x0;
LAB_000ddf3c:
  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);
  pcVar33 = pcStack_348;
  puVar8 = puVar34;
  if (iStack_314 != 0) goto LAB_000ddefc;
  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);
  if (iVar23 == 0) {
    __quote = (int *******)0x0;
    iVar23 = FUN_000dd618(pppppppiStack_304);
    if (-1 < iVar23) {
      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);
      pppppppiVar6 = (int *******)
                     (**(code **)(pcStack_348 + -0x60a4))
                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));
      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
      if (pppppppiVar6 == (int *******)0x0) {
        if (iVar3 == 0) {
          uStack_30c = 1;
          pcVar33 = pcStack_348;
        }
        else {
          (**(code **)(pcStack_348 + -0x5f94))(iVar3);
          uStack_30c = 1;
          pcVar33 = pcStack_348;
        }
      }
      else if (iVar3 == 0) {
        __quote = pppppppiVar27;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
        uStack_30c = 1;
        pcVar33 = pcStack_348;
      }
      else {
        (**(code **)(pcStack_348 + -0x6074))(iVar3);
        FUN_000ddacc(iVar3);
        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);
        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;
        (**(code **)(pcStack_348 + -0x6074))
                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);
        __quote = pppppppiVar6;
        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);
        if (iVar23 < 0) {
          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
          (**(code **)(pcStack_348 + -0x5f94))(iVar3);
          unaff_s2 = (int *******)0x0;
          pcVar33 = pcStack_348;
          goto LAB_000ddf00;
        }
        (**(code **)(pcStack_348 + -0x5f94))();
        pcVar33 = pcStack_348;
        pppppppiVar25 = (int *******)(puVar34 + 8);
        *pppppppiVar25 = (int ******)0x0;
        *(int *)(puVar34 + 0xc) = iVar3;
        pppppppiVar28 = (int *******)0x1;
        puVar8 = puVar34 + -8;
      }
      goto LAB_000ddefc;
    }
    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
    pcVar33 = pcStack_348;
  }
  else {
    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();
    if (iStack_308 != 0) {
      uStack_320 = 1;
      if (**(int **)(pcStack_348 + -0x70d8) != 0) {
        uStack_320 = 5;
      }
      piVar15 = *(int **)(pcStack_348 + -0x7bf8);
      if (**(int **)(pcStack_348 + -0x70e4) != 0) {
        uStack_320 = uStack_320 | 0x10;
        piVar15 = *(int **)(pcStack_348 + -0x7bf8);
      }
      if (*piVar15 != 0) {
        uStack_320 = uStack_320 | 0x20;
      }
      uStack_330 = (uint)pppppppiVar7 & 0x210;
      uVar5 = (int)pppppppiVar7 >> 2 & 4;
      uStack_33c = (uint)pppppppiVar7 & 0x100;
      uStack_338 = uVar5 | 8;
      if (uStack_33c == 0) {
        uStack_338 = uVar5;
      }
      unaff_s2 = (int *******)0x0;
      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);
      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);
      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);
      pppppppiVar6 = pppppppiVar25;
LAB_000de028:
      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
LAB_000de02c:
      do {
        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);
        do {
          if (*unaff_s6 != (int ******)0x0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          if (*pppppppiVar4 != (int ******)0x0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);
          if (iVar3 != 0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);
          if (piVar15 == (int *)0x0) goto LAB_000de200;
        } while (*piVar15 == 0 && piVar15[1] == 0);
        uVar5 = (**(code **)(pcStack_348 + -0x6060))();
        if (1 < uVar5) {
          __quote = (int *******)((int)piVar15 + 0x13);
          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);
          if (iVar3 != 0) goto LAB_000de028;
        }
        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);
        __quote = pppppppiVar25;
        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);
        if (iVar3 != 0) goto LAB_000de028;
        if (((uint)pppppppiVar7 & 0x18) == 0) {
LAB_000de13c:
          if (((uint)pppppppiVar7 & 0x10) == 0) {
            if (((uint)pppppppiVar7 & 8) != 0) {
              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
            }
LAB_000de658:
            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);
            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);
            if (iVar3 == 1) goto LAB_000de028;
            if (iStack_314 < 100000) {
              unaff_s6 = (int *******)(puVar34 + 8);
              iStack_314 = iStack_314 + 8;
              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
              puVar34 = puVar34 + -8;
            }
            else {
              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
              if (unaff_s2 == (int *******)0x0) {
                unaff_s2 = unaff_s6;
              }
              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
              if (unaff_s6 == (int *******)0x0) {
                if (pppppppiVar4 == (int *******)0x0) {
                  uStack_30c = 1;
                }
                else {
                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);
                  uStack_30c = 1;
                }
                goto LAB_000de200;
              }
            }
            pcVar33 = pcStack_348;
            if (pppppppiVar4 == (int *******)0x0) {
              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);
              uStack_30c = 1;
              pppppppiVar4 = (int *******)0x0;
              goto LAB_000de200;
            }
            *unaff_s6 = (int ******)pppppppiVar6;
            unaff_s6[1] = (int ******)pppppppiVar4;
            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);
            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);
            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
            __quote = pppppppiVar25;
            pppppppiVar6 = unaff_s6;
            goto LAB_000de028;
          }
          if (iStack_32c == 0) {
            __quote = pppppppiStack_324;
            unaff_s6 = (int *******)
                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);
            pppppppiStack_340 = unaff_s6;
            if (unaff_s6 != (int *******)0x0) {
              if (*unaff_s6 != (int ******)0x0) {
                iStack_318 = iStack_32c;
                pppppppiStack_310 = (int *******)0x0;
                pppppppiVar4 = (int *******)0x0;
                goto LAB_000de4c4;
              }
              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {
                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);
              }
            }
            goto LAB_000de180;
          }
        }
        else {
          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);
          __quote = pppppppiVar7;
          iStack_32c = (*pcStack_334)(pppppppiStack_324);
          if (-1 < iStack_32c) goto LAB_000de13c;
          if (((uint)pppppppiVar7 & 8) != 0) {
            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
            goto LAB_000de02c;
          }
          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;
        }
        __quote = (int *******)0x0;
        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))
        goto LAB_000de180;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
      } while( true );
    }
    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
    pcVar33 = pcStack_348;
  }
  goto LAB_000de914;
code_r0x000dd9a4:
  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);
  if (unaff_s6 != (int *******)0x2f) {
    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;
  }
  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);
  if (uStack_1a4 != 0) {
    pppppppiVar25 = (int *******)*pppppppiStack_1b4;
    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);
    pppppppiVar6 = pppppppiStack_1b4;
    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {
      ppppppiVar21 = *pppppppiStack_1b4;
      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);
      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);
      *(undefined1 *)pppppppiVar7 = 0x2f;
      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;
    }
  }
  unaff_s3 = (int *******)((int)unaff_s3 + 1);
  iVar3 = (int)unaff_s3 * 4;
  pppppppiVar6 = (int *******)*unaff_s4;
  unaff_s2 = unaff_s2 + 1;
  unaff_s4 = unaff_s4 + 1;
  pppppppiVar22 = pppppppiVar25;
  unaff_s5 = pppppppiVar27;
  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;
  goto LAB_000dd968;
LAB_000de4c4:
  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;
  if (pppppppiStack_310 != (int *******)0x0) {
    do {
      pppppppiVar25 = (int *******)*pppppppiStack_310;
      (**(code **)(pcStack_348 + -0x5f94))();
      pppppppiStack_310 = pppppppiVar25;
    } while (pppppppiVar25 != (int *******)0x0);
    pppppppiStack_310 = (int *******)0x0;
  }
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
  uStack_30c = 1;
  goto LAB_000de200;
code_r0x000de4dc:
  if (pppppppiVar4 == (int *******)0x0) {
    pppppppiVar4 = pppppppiVar25;
  }
  *pppppppiVar25 = (int ******)pppppppiStack_310;
  pppppppiVar25[1] = *unaff_s6;
  iStack_318 = iStack_318 + 1;
  unaff_s6 = unaff_s6 + 1;
  pppppppiStack_310 = pppppppiVar25;
  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;
  goto LAB_000de4c4;
LAB_000df004:
  puVar31 = puVar31 + 1;
  pcVar29 = (char *)*puVar31;
  piVar15 = *(int **)(puVar8 + -0x30);
  if (pcVar29 == (char *)0x0) {
LAB_000df34c:
    if (*piVar15 != 0) {
      pcVar33 = *(code **)(iVar23 + -0x5f94);
      do {
        piVar15 = piVar15 + 1;
        (*pcVar33)();
        iVar23 = *(int *)(puVar8 + -0x50);
        pcVar33 = *(code **)(iVar23 + -0x5f94);
      } while (*piVar15 != 0);
    }
    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));
    return pppppppiVar7;
  }
  goto LAB_000df010;
code_r0x000de510:
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);
  if (iStack_318 != 0) {
    if (unaff_s2 == (int *******)0x0) {
      unaff_s2 = pppppppiVar4;
    }
    *pppppppiVar4 = (int ******)pppppppiVar6;
    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);
    pppppppiVar6 = pppppppiVar25;
  }
LAB_000de180:
  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
  if (unaff_s2 == (int *******)0x0) {
    unaff_s2 = pppppppiVar25;
  }
  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);
  unaff_s6 = (int *******)(iVar3 + 1);
  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);
  pppppppiVar22 = pppppppiStack_324;
  if (pppppppiVar25 == (int *******)0x0) {
    if (ppppppiVar21 != (int ******)0x0) {
      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);
    }
  }
  else {
    if (ppppppiVar21 != (int ******)0x0) {
      *pppppppiVar25 = (int ******)pppppppiVar6;
      pppppppiVar25[1] = ppppppiVar21;
      __quote = pppppppiStack_324;
      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);
      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);
      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
      pppppppiVar6 = pppppppiVar25;
      goto LAB_000de028;
    }
    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);
  }
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
  uStack_30c = 1;
LAB_000de200:
  (**(code **)(pcStack_348 + -0x6284))(iStack_308);
  pppppppiVar25 = pppppppiVar6;
  pcVar33 = pcStack_348;
  if (uStack_330 == 0x210) {
    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);
    pppppppiVar7 = (int *******)(iVar3 + 1);
    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);
    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
    if (pppppppiVar25 == (int *******)0x0) {
      pppppppiVar25 = pppppppiVar6;
      pcVar33 = pcStack_348;
      if (pppppppiVar27 != (int *******)0x0) {
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);
        pcVar33 = pcStack_348;
      }
    }
    else {
      if (pppppppiVar27 != (int *******)0x0) {
        pppppppiVar25[1] = (int ******)pppppppiVar27;
        *pppppppiVar25 = (int ******)pppppppiVar6;
        if (uStack_33c == 0) {
          __quote = pppppppiStack_304;
          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);
        }
        else {
          *(undefined1 *)pppppppiVar27 = 0;
        }
        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
        pcVar33 = pcStack_348;
        goto LAB_000ddf00;
      }
      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);
      pppppppiVar25 = pppppppiVar6;
      pcVar33 = pcStack_348;
    }
  }
  else {
LAB_000ddf00:
    if (uStack_30c == 0) {
      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);
      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);
      pcVar33 = pcStack_348;
      if (pppppppiVar6 != (int *******)0x0) {
        if (pppppppiVar28 != (int *******)0x0) {
          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);
          pppppppiVar22 = pppppppiVar6;
          pppppppiVar27 = pppppppiVar25;
          do {
            *pppppppiVar22 = pppppppiVar27[1];
            pppppppiVar22 = pppppppiVar22 + 1;
            pppppppiVar27 = (int *******)*pppppppiVar27;
          } while (__quote != pppppppiVar22);
        }
        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;
        pppppppiVar27[-1] = (int ******)0x0;
        puVar8 = puVar34;
        pppppppiVar22 = pppppppiVar25;
        if (unaff_s2 != (int *******)0x0) {
          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {
            pppppppiVar25 = pppppppiVar22;
            if (pppppppiVar22 == unaff_s2) {
              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);
              pcVar33 = pcStack_348;
              break;
            }
            pppppppiVar27 = (int *******)*pppppppiVar22;
            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);
            pppppppiVar22 = pppppppiVar27;
          }
        }
        goto LAB_000de914;
      }
    }
  }
  pppppppiVar6 = pppppppiVar25;
  puVar8 = puVar34;
  if (pppppppiVar25 == (int *******)0x0) {
    pppppppiVar6 = (int *******)0x0;
  }
  else {
    do {
      if (unaff_s2 == (int *******)0x0) {
        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);
        pppppppiVar6 = (int *******)*pppppppiVar6;
      }
      else {
        if (pppppppiVar6 == unaff_s2) {
          unaff_s2 = (int *******)0x0;
        }
        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);
        pppppppiVar25 = (int *******)*pppppppiVar6;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
        pppppppiVar6 = pppppppiVar25;
      }
      pcVar33 = pcStack_348;
    } while (pppppppiVar6 != (int *******)0x0);
  }
LAB_000de914:
  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {
    return pppppppiVar6;
  }
  pcVar33 = *(code **)(pcVar33 + -0x6004);
  pcVar35 = glob_filename;
  pcVar29 = pcStack_25c;
  (*pcVar33)();
  *(code **)(puVar8 + -4) = pcVar35;
  *(undefined1 **)(puVar8 + -8) = auStack_358;
  *(int ********)(puVar8 + -0xc) = pppppppiVar4;
  *(int ********)(puVar8 + -0x10) = unaff_s6;
  *(int ********)(puVar8 + -0x14) = pppppppiVar28;
  *(int ********)(puVar8 + -0x18) = pppppppiVar7;
  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;
  *(int ********)(puVar8 + -0x20) = unaff_s2;
  *(int ********)(puVar8 + -0x24) = pppppppiVar6;
  *(int ********)(puVar8 + -0x28) = pppppppiVar25;
  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;
  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);
  iVar3 = *(int *)(puVar8 + -0x50);
  if (pppppppiVar7 == (int *******)0x0) {
    return (int *******)0x0;
  }
  *pppppppiVar7 = (int ******)0x0;
  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);
  iVar23 = *(int *)(puVar8 + -0x50);
  if (iVar3 == 0) {
LAB_000deb88:
    iVar3 = 0;
    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);
LAB_000deb94:
    if (*pcVar29 == '\0') {
      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);
      iVar17 = *(int *)(puVar8 + -0x50);
      if (pppppppiVar7 == (int *******)0x0) {
        if (iVar3 == 0) {
          return (int *******)0x0;
        }
LAB_000df3a4:
        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);
        return (int *******)0x0;
      }
      uVar5 = 0;
LAB_000df634:
      iVar24 = uVar5 + 1;
LAB_000df638:
      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);
      iVar23 = *(int *)(puVar8 + -0x50);
      *pppppppiVar7 = ppppppiVar16;
      if (ppppppiVar16 != (int ******)0x0) {
        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);
        if (iVar3 == 0) {
          pppppppiVar7[1] = (int ******)0x0;
          return pppppppiVar7;
        }
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
        pppppppiVar7[1] = (int ******)0x0;
        return pppppppiVar7;
      }
LAB_000df2ac:
      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);
      iVar23 = *(int *)(puVar8 + -0x50);
      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {
        piVar15 = *(int **)(iVar23 + -0x7cfc);
      }
      else {
        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
        iVar23 = *(int *)(puVar8 + -0x50);
        piVar15 = *(int **)(iVar23 + -0x7cfc);
      }
LAB_000df2c8:
      if (*piVar15 == 0) {
        piVar15 = *(int **)(iVar23 + -0x7cf8);
      }
      else {
        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));
        iVar23 = *(int *)(puVar8 + -0x50);
        piVar15 = *(int **)(iVar23 + -0x7cf8);
      }
      if (*piVar15 == 0) {
        pcVar33 = *(code **)(iVar23 + -0x7d20);
      }
      else {
        (**(code **)(iVar23 + -0x7cf4))();
        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);
      }
      (*pcVar33)();
      return (int *******)0x0;
    }
    (**(code **)(iVar23 + -0x5f94))();
    iVar23 = *(int *)(puVar8 + -0x50);
    uVar30 = (uint)__quote & 0xfffffffe | 0x100;
    uVar14 = uVar30;
    if (((uint)__quote & 0x400) == 0) {
      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
    }
    else if (*pcVar29 == '*') {
      uVar5 = 0;
LAB_000df42c:
      ppppppiVar16 = ppppppiVar21;
      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {
        uVar14 = uVar30 | 0x210;
        if (uVar5 == 0) {
          if (((uint)__quote & 0x10) == 0) {
            uVar14 = uVar30 & 0xfffffdff | 0x10;
          }
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
        }
      }
      else {
        uVar14 = uVar30;
        if (uVar5 == 0) {
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
        }
      }
    }
    else {
      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
    }
LAB_000debcc:
    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);
    iVar23 = *(int *)(puVar8 + -0x50);
    if (pppppppiVar7 != (int *******)0x0) {
LAB_000debec:
      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {
        ppppppiVar16 = ppppppiVar21;
        if ((uVar14 & 0x10) != 0) {
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);
        }
        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);
        if (iVar3 == 0) {
          return pppppppiVar7;
        }
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
        return pppppppiVar7;
      }
    }
    if (iVar3 == 0) {
      piVar15 = *(int **)(iVar23 + -0x7cfc);
      goto LAB_000df4b0;
    }
  }
  else {
    if (**(int **)(iVar23 + -0x7bf8) != 0) {
      iVar3 = glob_dirscan(pcVar29,0x2f);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (iVar3 == 0) goto LAB_000deb88;
    }
    iVar24 = iVar3 - (int)pcVar29;
    uVar5 = iVar24 + 1;
    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);
    if (ppppppiVar21 == (int ******)0x0) {
      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
      return (int *******)0x0;
    }
    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);
    iVar23 = *(int *)(puVar8 + -0x50);
    *(char *)((int)ppppppiVar21 + uVar5) = '\0';
    pcVar26 = (char *)(iVar3 + 1);
    if (uVar5 == 0) {
      iVar3 = 1;
      pcVar29 = pcVar26;
      goto LAB_000deb94;
    }
    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);
    if (iVar23 == 1) {
      uVar14 = (uint)__quote & 0xfffffffe;
      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;
      ppppppiVar16 = ppppppiVar21;
      if (((uint)__quote & 0x400) == 0) {
        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);
      }
      else {
        if (*(char *)ppppppiVar21 == '*') {
          if (*(char *)((int)ppppppiVar21 + 1) == '*') {
            ppppppiVar10 = ppppppiVar21;
            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||
               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {
              do {
                ppppppiVar19 = ppppppiVar10;
                ppppppiVar10 = ppppppiVar19;
                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;
                if (*(char *)((int)ppppppiVar19 + 2) == '/') {
                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);
                  cVar2 = *(char *)((int)ppppppiVar19 + 3);
                  while (cVar2 == '/') {
                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);
                    cVar2 = *(char *)ppppppiVar10;
                  }
                  ppppppiVar16 = ppppppiVar19;
                  if (cVar2 == '\0') break;
                }
                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {
                  cVar2 = *(char *)ppppppiVar19;
                  goto LAB_000dedb8;
                }
                ppppppiVar16 = ppppppiVar19;
              } while (*(char *)ppppppiVar10 == '*');
              cVar2 = *(char *)ppppppiVar10;
LAB_000dedb8:
              *(int *)(puVar8 + -0x40) = (int)cVar2;
              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);
              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);
              uVar14 = uVar14 | 0x210;
              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;
            }
            else {
              *(undefined4 *)(puVar8 + -0x48) = 0;
            }
          }
          else {
            *(undefined4 *)(puVar8 + -0x48) = 0;
          }
        }
        else {
          *(undefined4 *)(puVar8 + -0x48) = 0;
        }
        uVar20 = uVar5;
        uVar30 = uVar5;
        if (3 < (int)uVar5) {
          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||
              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||
             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;
          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));
          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&
                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {
            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))
            break;
          }
        }
        bVar1 = uVar30 != uVar5;
        uVar5 = uVar20;
        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&
           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {
          uVar5 = uVar20 - 3;
        }
      }
LAB_000dee6c:
      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));
      if (*pcVar29 == '/') {
        *pcVar29 = '\0';
      }
      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);
      *(int *)(puVar8 + -0x30) = iVar24;
      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (iVar24 == 0) {
LAB_000df274:
        iVar3 = 1;
        ppppppiVar21 = *pppppppiVar7;
        pppppppiVar4 = pppppppiVar7;
        while (ppppppiVar21 != (int ******)0x0) {
          pppppppiVar4 = pppppppiVar4 + 1;
          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
          iVar23 = *(int *)(puVar8 + -0x50);
          ppppppiVar21 = *pppppppiVar4;
        }
        goto LAB_000df2ac;
      }
      if (iVar24 == *(int *)(iVar23 + -0x7174)) {
        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);
        return *(int ********)(puVar8 + -0x30);
      }
      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);
      if (pcVar29 == (char *)0x0) {
        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);
      }
      puVar31 = *(undefined4 **)(puVar8 + -0x30);
      if (*(int *)(puVar8 + -0x48) != 0) {
        if (*(char *)(iVar3 + 1) != '*') {
          iVar24 = *(int *)(iVar23 + -0x7f90);
          goto LAB_000def94;
        }
        puVar31 = *(undefined4 **)(puVar8 + -0x30);
        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {
          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));
          iVar23 = *(int *)(puVar8 + -0x50);
          iVar3 = *(int *)(puVar8 + -0x48);
          ppppppiVar21 = (int ******)0x0;
          pcVar29 = pcVar26;
          goto LAB_000deb94;
        }
      }
      iVar24 = *(int *)(iVar23 + -0x7f90);
LAB_000def94:
      iVar17 = 1;
      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;
      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);
      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;
LAB_000df010:
      uVar5 = (uint)__quote & 0xfffffdee;
      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {
        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;
      }
      else {
        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {
          uVar5 = uVar5 | 0x210;
        }
        if (*pcVar29 == '\0') {
LAB_000defd0:
          uVar5 = uVar5 | 0x100;
          pcVar29 = *(char **)(puVar8 + -0x2c);
        }
      }
      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (piVar15 == (int *)0x0) goto LAB_000df26c;
      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;
      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;
      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')
          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {
        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);
        iVar23 = *(int *)(puVar8 + -0x50);
        *(undefined4 *)(puVar8 + -0x3c) = 0;
LAB_000df0a0:
        iVar24 = 0;
        if (*piVar11 != 0) {
LAB_000df0ac:
          iVar24 = 0;
          piVar13 = piVar11;
          do {
            piVar13 = piVar13 + 1;
            iVar24 = iVar24 + 1;
          } while (*piVar13 != 0);
        }
      }
      else {
        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;
        piVar11 = piVar15;
        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;
        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;
        if (((uint)__quote & 0x100) != 0) {
          *(undefined4 *)(puVar8 + -0x3c) = 0;
          goto LAB_000df0a0;
        }
        if ((char *)*piVar15 != (char *)0x0) {
          piVar13 = piVar15;
          if (*(char *)*piVar15 == '\0') {
            do {
              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;
              pcVar29 = (char *)piVar13[1];
              if (pcVar29 == (char *)0x0) {
                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];
                *(undefined4 *)(puVar8 + -0x3c) = 1;
                goto LAB_000df0a0;
              }
              piVar13 = piVar13 + 1;
            } while (*pcVar29 == '\0');
            iVar24 = *(int *)(puVar8 + -0x3c);
            piVar13 = piVar15 + iVar24;
            do {
              iVar12 = *piVar13;
              piVar13[-iVar24] = iVar12;
              piVar13 = piVar13 + 1;
            } while (iVar12 != 0);
            *(undefined4 *)(puVar8 + -0x3c) = 1;
            goto LAB_000df0a0;
          }
          goto LAB_000df0ac;
        }
        iVar24 = 0;
      }
      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);
      iVar23 = *(int *)(puVar8 + -0x50);
      *(int *)(puVar8 + -0x48) = iVar24;
      if (iVar24 == 0) {
        pcVar33 = *(code **)(iVar23 + -0x5f94);
        iVar3 = *piVar11;
        piVar15 = piVar11;
        while (iVar3 != 0) {
          piVar15 = piVar15 + 1;
          (*pcVar33)();
          iVar23 = *(int *)(puVar8 + -0x50);
          pcVar33 = *(code **)(iVar23 + -0x5f94);
          iVar3 = *piVar15;
        }
        (**(code **)(iVar23 + -0x5f94))(piVar11);
        iVar23 = *(int *)(puVar8 + -0x50);
LAB_000df26c:
        piVar15 = *(int **)(iVar23 + -0x7cfc);
        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;
        goto LAB_000df274;
      }
      iVar24 = *piVar11;
      if (iVar24 != 0) {
        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;
        piVar13 = piVar11;
        do {
          piVar13 = piVar13 + 1;
          iVar17 = iVar17 + 1;
          *(int *)(iVar12 + -4) = iVar24;
          iVar24 = *piVar13;
          iVar12 = iVar12 + 4;
        } while (iVar24 != 0);
      }
      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;
      if (piVar15 == piVar11) {
        iVar24 = *(int *)(puVar8 + -0x3c);
        if (*(int *)(puVar8 + -0x38) != 0) {
          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;
          iVar24 = *(int *)(puVar8 + -0x3c);
          if (*(char *)(iVar3 + 2) == '*') {
            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;
            (**(code **)(iVar23 + -0x5f94))(piVar11);
            iVar23 = *(int *)(puVar8 + -0x50);
            iVar24 = *(int *)(puVar8 + -0x3c);
          }
        }
      }
      else {
        (**(code **)(iVar23 + -0x5f94))(piVar11);
        iVar23 = *(int *)(puVar8 + -0x50);
LAB_000df14c:
        iVar24 = *(int *)(puVar8 + -0x3c);
      }
      pppppppiVar7 = *(int ********)(puVar8 + -0x48);
      if (iVar24 == 0) goto LAB_000df004;
      piVar15 = *(int **)(puVar8 + -0x30);
      goto LAB_000df34c;
    }
    if (*(char *)(iVar3 + 1) == '\0') {
      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);
      iVar17 = *(int *)(puVar8 + -0x50);
      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;
      if (uVar5 == 0) {
        iVar3 = 1;
        goto LAB_000df634;
      }
      iVar3 = 1;
      if (iVar23 == 2) {
        if (((uint)__quote & 0x800) == 0) {
          iVar3 = 1;
        }
        else {
          FUN_000ddacc(ppppppiVar21);
          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);
          iVar17 = *(int *)(puVar8 + -0x50);
          iVar3 = 1;
        }
        goto LAB_000df634;
      }
      iVar24 = iVar24 + 2;
      goto LAB_000df638;
    }
    FUN_000ddacc(ppppppiVar21);
    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
    iVar23 = *(int *)(puVar8 + -0x50);
    uVar30 = (uint)__quote & 0xfffffffe;
    uVar14 = uVar30;
    if (((uint)__quote & 0x400) != 0) {
      if (*(char *)(iVar3 + 1) == '*') {
        iVar3 = 1;
        pcVar29 = pcVar26;
        goto LAB_000df42c;
      }
      iVar3 = 1;
      ppppppiVar16 = ppppppiVar21;
      pcVar29 = pcVar26;
      goto LAB_000debcc;
    }
    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);
    iVar23 = *(int *)(puVar8 + -0x50);
    if (pppppppiVar7 != (int *******)0x0) {
      iVar3 = 1;
      goto LAB_000debec;
    }
  }
  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
  iVar23 = *(int *)(puVar8 + -0x50);
  piVar15 = *(int **)(iVar23 + -0x7cfc);
LAB_000df4b0:
  if (*piVar15 == 0) {
    piVar15 = *(int **)(iVar23 + -0x7cf8);
  }
  else {
    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));
    iVar23 = *(int *)(puVar8 + -0x50);
    piVar15 = *(int **)(iVar23 + -0x7cf8);
  }
  if (*piVar15 == 0) {
    pcVar33 = *(code **)(iVar23 + -0x7d20);
  }
  else {
    (**(code **)(iVar23 + -0x7cf4))();
    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);
  }
  (*pcVar33)();
  return pppppppiVar7;
}


lui gp,0x8
addiu gp,gp,0xf28
addu gp,gp,t9
addiu sp,sp,-0xc8
sw ra,0xc4(sp)
sw gp,0x10(sp)
lw v0,-0x5fb4(gp)
lw v0,0x0(v0)
sw v0,0xbc(sp)
andi a1,a1,0x10
beq a1,zero,0x000dd6a0
_addiu a2,sp,0x18
or a1,a0,zero
li a0,0x3
lw t9,-0x6278(gp)
jalr t9
_nop
lw gp,0x10(sp)
bltz v0,0x000dd6c0
_ori v1,zero,0xa000
lw v0,0x30(sp)
andi v0,v0,0xf000
beq v0,v1,0x000dd6c8
_nop
xori v0,v0,0x4000
sltu v0,zero,v0
subu v0,zero,v0
lw a0,0xbc(sp)
lw v1,-0x5fb4(gp)
lw v1,0x0(v1)
bne a0,v1,0x000dd6d0
_lw ra,0xc4(sp)
jr ra
_addiu sp,sp,0xc8
or a1,a0,zero
li a0,0x3
lw t9,-0x6258(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x000dd660
_nop
b 0x000dd684
_li v0,-0x1
b 0x000dd684
_li v0,-0x2
lw t9,-0x6004(gp)
jalr t9
_nop
(translation_unit "/* WARNING: Removing unreachable block (ram,0x000ddde0) */\n/* WARNING: Type propagation algorithm not settling */\n\nint ******* FUN_000dd618(int *******param_1,uint param_2)\n\n{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}\n\n" comment comment (function_definition "int ******* FUN_000dd618(int *******param_1,uint param_2)\n\n{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" primitive_type (pointer_declarator "******* FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "****** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "***** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "**** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "*** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "* FUN_000dd618(int *******param_1,uint param_2)" * (function_declarator "FUN_000dd618(int *******param_1,uint param_2)" identifier (parameter_list "(int *******param_1,uint param_2)" ( (parameter_declaration "int *******param_1" primitive_type (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 "uint param_2" type_identifier identifier) )))))))))) (compound_statement "{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int *******pppppppiVar4;" primitive_type (pointer_declarator "*******pppppppiVar4" * (pointer_declarator "******pppppppiVar4" * (pointer_declarator "*****pppppppiVar4" * (pointer_declarator "****pppppppiVar4" * (pointer_declarator "***pppppppiVar4" * (pointer_declarator "**pppppppiVar4" * (pointer_declarator "*pppppppiVar4" * identifier))))))) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int *******pppppppiVar6;" primitive_type (pointer_declarator "*******pppppppiVar6" * (pointer_declarator "******pppppppiVar6" * (pointer_declarator "*****pppppppiVar6" * (pointer_declarator "****pppppppiVar6" * (pointer_declarator "***pppppppiVar6" * (pointer_declarator "**pppppppiVar6" * (pointer_declarator "*pppppppiVar6" * identifier))))))) ;) (declaration "int *******pppppppiVar7;" primitive_type (pointer_declarator "*******pppppppiVar7" * (pointer_declarator "******pppppppiVar7" * (pointer_declarator "*****pppppppiVar7" * (pointer_declarator "****pppppppiVar7" * (pointer_declarator "***pppppppiVar7" * (pointer_declarator "**pppppppiVar7" * (pointer_declarator "*pppppppiVar7" * identifier))))))) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "int ******ppppppiVar10;" primitive_type (pointer_declarator "******ppppppiVar10" * (pointer_declarator "*****ppppppiVar10" * (pointer_declarator "****ppppppiVar10" * (pointer_declarator "***ppppppiVar10" * (pointer_declarator "**ppppppiVar10" * (pointer_declarator "*ppppppiVar10" * identifier)))))) ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "int *piVar15;" primitive_type (pointer_declarator "*piVar15" * identifier) ;) (declaration "int ******ppppppiVar16;" primitive_type (pointer_declarator "******ppppppiVar16" * (pointer_declarator "*****ppppppiVar16" * (pointer_declarator "****ppppppiVar16" * (pointer_declarator "***ppppppiVar16" * (pointer_declarator "**ppppppiVar16" * (pointer_declarator "*ppppppiVar16" * identifier)))))) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "int ******ppppppiVar19;" primitive_type (pointer_declarator "******ppppppiVar19" * (pointer_declarator "*****ppppppiVar19" * (pointer_declarator "****ppppppiVar19" * (pointer_declarator "***ppppppiVar19" * (pointer_declarator "**ppppppiVar19" * (pointer_declarator "*ppppppiVar19" * identifier)))))) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "int ******ppppppiVar21;" primitive_type (pointer_declarator "******ppppppiVar21" * (pointer_declarator "*****ppppppiVar21" * (pointer_declarator "****ppppppiVar21" * (pointer_declarator "***ppppppiVar21" * (pointer_declarator "**ppppppiVar21" * (pointer_declarator "*ppppppiVar21" * identifier)))))) ;) (declaration "int *******pppppppiVar22;" primitive_type (pointer_declarator "*******pppppppiVar22" * (pointer_declarator "******pppppppiVar22" * (pointer_declarator "*****pppppppiVar22" * (pointer_declarator "****pppppppiVar22" * (pointer_declarator "***pppppppiVar22" * (pointer_declarator "**pppppppiVar22" * (pointer_declarator "*pppppppiVar22" * identifier))))))) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "int *******__quote;" primitive_type (pointer_declarator "*******__quote" * (pointer_declarator "******__quote" * (pointer_declarator "*****__quote" * (pointer_declarator "****__quote" * (pointer_declarator "***__quote" * (pointer_declarator "**__quote" * (pointer_declarator "*__quote" * identifier))))))) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int *******pppppppiVar25;" primitive_type (pointer_declarator "*******pppppppiVar25" * (pointer_declarator "******pppppppiVar25" * (pointer_declarator "*****pppppppiVar25" * (pointer_declarator "****pppppppiVar25" * (pointer_declarator "***pppppppiVar25" * (pointer_declarator "**pppppppiVar25" * (pointer_declarator "*pppppppiVar25" * identifier))))))) ;) (declaration "int *******unaff_s2;" primitive_type (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 "char *pcVar26;" primitive_type (pointer_declarator "*pcVar26" * identifier) ;) (declaration "int *******unaff_s3;" primitive_type (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 "int *******pppppppiVar27;" primitive_type (pointer_declarator "*******pppppppiVar27" * (pointer_declarator "******pppppppiVar27" * (pointer_declarator "*****pppppppiVar27" * (pointer_declarator "****pppppppiVar27" * (pointer_declarator "***pppppppiVar27" * (pointer_declarator "**pppppppiVar27" * (pointer_declarator "*pppppppiVar27" * identifier))))))) ;) (declaration "int *******unaff_s4;" primitive_type (pointer_declarator "*******unaff_s4" * (pointer_declarator "******unaff_s4" * (pointer_declarator "*****unaff_s4" * (pointer_declarator "****unaff_s4" * (pointer_declarator "***unaff_s4" * (pointer_declarator "**unaff_s4" * (pointer_declarator "*unaff_s4" * identifier))))))) ;) (declaration "int *******unaff_s5;" primitive_type (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 "int *******pppppppiVar28;" primitive_type (pointer_declarator "*******pppppppiVar28" * (pointer_declarator "******pppppppiVar28" * (pointer_declarator "*****pppppppiVar28" * (pointer_declarator "****pppppppiVar28" * (pointer_declarator "***pppppppiVar28" * (pointer_declarator "**pppppppiVar28" * (pointer_declarator "*pppppppiVar28" * identifier))))))) ;) (declaration "char *pcVar29;" primitive_type (pointer_declarator "*pcVar29" * identifier) ;) (declaration "int *******unaff_s6;" primitive_type (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 "uint uVar30;" type_identifier identifier ;) (declaration "undefined4 *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "int *******unaff_s7;" primitive_type (pointer_declarator "*******unaff_s7" * (pointer_declarator "******unaff_s7" * (pointer_declarator "*****unaff_s7" * (pointer_declarator "****unaff_s7" * (pointer_declarator "***unaff_s7" * (pointer_declarator "**unaff_s7" * (pointer_declarator "*unaff_s7" * identifier))))))) ;) (declaration "undefined *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "code *pcVar33;" type_identifier (pointer_declarator "*pcVar33" * identifier) ;) (declaration "undefined1 *puVar34;" type_identifier (pointer_declarator "*puVar34" * identifier) ;) (declaration "int ******unaff_s8;" primitive_type (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 "code *pcVar35;" type_identifier (pointer_declarator "*pcVar35" * identifier) ;) (declaration "undefined1 auStack_360 [8];" type_identifier (array_declarator "auStack_360 [8]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_358 [8];" type_identifier (array_declarator "auStack_358 [8]" identifier [ number_literal ]) ;) (declaration "int ******ppppppiStack_350;" primitive_type (pointer_declarator "******ppppppiStack_350" * (pointer_declarator "*****ppppppiStack_350" * (pointer_declarator "****ppppppiStack_350" * (pointer_declarator "***ppppppiStack_350" * (pointer_declarator "**ppppppiStack_350" * (pointer_declarator "*ppppppiStack_350" * identifier)))))) ;) (declaration "undefined1 *puStack_34c;" type_identifier (pointer_declarator "*puStack_34c" * identifier) ;) (declaration "code *pcStack_348;" type_identifier (pointer_declarator "*pcStack_348" * identifier) ;) (declaration "int *******pppppppiStack_340;" primitive_type (pointer_declarator "*******pppppppiStack_340" * (pointer_declarator "******pppppppiStack_340" * (pointer_declarator "*****pppppppiStack_340" * (pointer_declarator "****pppppppiStack_340" * (pointer_declarator "***pppppppiStack_340" * (pointer_declarator "**pppppppiStack_340" * (pointer_declarator "*pppppppiStack_340" * identifier))))))) ;) (declaration "uint uStack_33c;" type_identifier identifier ;) (declaration "uint uStack_338;" type_identifier identifier ;) (declaration "code *pcStack_334;" type_identifier (pointer_declarator "*pcStack_334" * identifier) ;) (declaration "uint uStack_330;" type_identifier identifier ;) (declaration "int iStack_32c;" primitive_type identifier ;) (declaration "undefined4 uStack_328;" type_identifier identifier ;) (declaration "int *******pppppppiStack_324;" primitive_type (pointer_declarator "*******pppppppiStack_324" * (pointer_declarator "******pppppppiStack_324" * (pointer_declarator "*****pppppppiStack_324" * (pointer_declarator "****pppppppiStack_324" * (pointer_declarator "***pppppppiStack_324" * (pointer_declarator "**pppppppiStack_324" * (pointer_declarator "*pppppppiStack_324" * identifier))))))) ;) (declaration "uint uStack_320;" type_identifier identifier ;) (declaration "code *pcStack_31c;" type_identifier (pointer_declarator "*pcStack_31c" * identifier) ;) (declaration "int iStack_318;" primitive_type identifier ;) (declaration "int iStack_314;" primitive_type identifier ;) (declaration "int *******pppppppiStack_310;" primitive_type (pointer_declarator "*******pppppppiStack_310" * (pointer_declarator "******pppppppiStack_310" * (pointer_declarator "*****pppppppiStack_310" * (pointer_declarator "****pppppppiStack_310" * (pointer_declarator "***pppppppiStack_310" * (pointer_declarator "**pppppppiStack_310" * (pointer_declarator "*pppppppiStack_310" * identifier))))))) ;) (declaration "uint uStack_30c;" type_identifier identifier ;) (declaration "int iStack_308;" primitive_type identifier ;) (declaration "int *******pppppppiStack_304;" primitive_type (pointer_declarator "*******pppppppiStack_304" * (pointer_declarator "******pppppppiStack_304" * (pointer_declarator "*****pppppppiStack_304" * (pointer_declarator "****pppppppiStack_304" * (pointer_declarator "***pppppppiStack_304" * (pointer_declarator "**pppppppiStack_304" * (pointer_declarator "*pppppppiStack_304" * identifier))))))) ;) (declaration "undefined1 auStack_300 [164];" type_identifier (array_declarator "auStack_300 [164]" identifier [ number_literal ]) ;) (declaration "char *pcStack_25c;" primitive_type (pointer_declarator "*pcStack_25c" * identifier) ;) (declaration "int *******pppppppiStack_258;" primitive_type (pointer_declarator "*******pppppppiStack_258" * (pointer_declarator "******pppppppiStack_258" * (pointer_declarator "*****pppppppiStack_258" * (pointer_declarator "****pppppppiStack_258" * (pointer_declarator "***pppppppiStack_258" * (pointer_declarator "**pppppppiStack_258" * (pointer_declarator "*pppppppiStack_258" * identifier))))))) ;) (declaration "int *******pppppppiStack_254;" primitive_type (pointer_declarator "*******pppppppiStack_254" * (pointer_declarator "******pppppppiStack_254" * (pointer_declarator "*****pppppppiStack_254" * (pointer_declarator "****pppppppiStack_254" * (pointer_declarator "***pppppppiStack_254" * (pointer_declarator "**pppppppiStack_254" * (pointer_declarator "*pppppppiStack_254" * identifier))))))) ;) (declaration "int *******pppppppiStack_250;" primitive_type (pointer_declarator "*******pppppppiStack_250" * (pointer_declarator "******pppppppiStack_250" * (pointer_declarator "*****pppppppiStack_250" * (pointer_declarator "****pppppppiStack_250" * (pointer_declarator "***pppppppiStack_250" * (pointer_declarator "**pppppppiStack_250" * (pointer_declarator "*pppppppiStack_250" * identifier))))))) ;) (declaration "int *******pppppppiStack_24c;" primitive_type (pointer_declarator "*******pppppppiStack_24c" * (pointer_declarator "******pppppppiStack_24c" * (pointer_declarator "*****pppppppiStack_24c" * (pointer_declarator "****pppppppiStack_24c" * (pointer_declarator "***pppppppiStack_24c" * (pointer_declarator "**pppppppiStack_24c" * (pointer_declarator "*pppppppiStack_24c" * identifier))))))) ;) (declaration "int *******pppppppiStack_248;" primitive_type (pointer_declarator "*******pppppppiStack_248" * (pointer_declarator "******pppppppiStack_248" * (pointer_declarator "*****pppppppiStack_248" * (pointer_declarator "****pppppppiStack_248" * (pointer_declarator "***pppppppiStack_248" * (pointer_declarator "**pppppppiStack_248" * (pointer_declarator "*pppppppiStack_248" * identifier))))))) ;) (declaration "int *******pppppppiStack_244;" primitive_type (pointer_declarator "*******pppppppiStack_244" * (pointer_declarator "******pppppppiStack_244" * (pointer_declarator "*****pppppppiStack_244" * (pointer_declarator "****pppppppiStack_244" * (pointer_declarator "***pppppppiStack_244" * (pointer_declarator "**pppppppiStack_244" * (pointer_declarator "*pppppppiStack_244" * identifier))))))) ;) (declaration "int *******pppppppiStack_240;" primitive_type (pointer_declarator "*******pppppppiStack_240" * (pointer_declarator "******pppppppiStack_240" * (pointer_declarator "*****pppppppiStack_240" * (pointer_declarator "****pppppppiStack_240" * (pointer_declarator "***pppppppiStack_240" * (pointer_declarator "**pppppppiStack_240" * (pointer_declarator "*pppppppiStack_240" * identifier))))))) ;) (declaration "int *******pppppppiStack_23c;" primitive_type (pointer_declarator "*******pppppppiStack_23c" * (pointer_declarator "******pppppppiStack_23c" * (pointer_declarator "*****pppppppiStack_23c" * (pointer_declarator "****pppppppiStack_23c" * (pointer_declarator "***pppppppiStack_23c" * (pointer_declarator "**pppppppiStack_23c" * (pointer_declarator "*pppppppiStack_23c" * identifier))))))) ;) (declaration "int ******ppppppiStack_238;" primitive_type (pointer_declarator "******ppppppiStack_238" * (pointer_declarator "*****ppppppiStack_238" * (pointer_declarator "****ppppppiStack_238" * (pointer_declarator "***ppppppiStack_238" * (pointer_declarator "**ppppppiStack_238" * (pointer_declarator "*ppppppiStack_238" * identifier)))))) ;) (declaration "code *pcStack_234;" type_identifier (pointer_declarator "*pcStack_234" * identifier) ;) (declaration "code *pcStack_220;" type_identifier (pointer_declarator "*pcStack_220" * identifier) ;) (declaration "int *******pppppppiStack_218;" primitive_type (pointer_declarator "*******pppppppiStack_218" * (pointer_declarator "******pppppppiStack_218" * (pointer_declarator "*****pppppppiStack_218" * (pointer_declarator "****pppppppiStack_218" * (pointer_declarator "***pppppppiStack_218" * (pointer_declarator "**pppppppiStack_218" * (pointer_declarator "*pppppppiStack_218" * identifier))))))) ;) (declaration "int *******pppppppiStack_214;" primitive_type (pointer_declarator "*******pppppppiStack_214" * (pointer_declarator "******pppppppiStack_214" * (pointer_declarator "*****pppppppiStack_214" * (pointer_declarator "****pppppppiStack_214" * (pointer_declarator "***pppppppiStack_214" * (pointer_declarator "**pppppppiStack_214" * (pointer_declarator "*pppppppiStack_214" * identifier))))))) ;) (declaration "int *******pppppppiStack_210;" primitive_type (pointer_declarator "*******pppppppiStack_210" * (pointer_declarator "******pppppppiStack_210" * (pointer_declarator "*****pppppppiStack_210" * (pointer_declarator "****pppppppiStack_210" * (pointer_declarator "***pppppppiStack_210" * (pointer_declarator "**pppppppiStack_210" * (pointer_declarator "*pppppppiStack_210" * identifier))))))) ;) (declaration "code *pcStack_20c;" type_identifier (pointer_declarator "*pcStack_20c" * identifier) ;) (declaration "code *pcStack_1f8;" type_identifier (pointer_declarator "*pcStack_1f8" * identifier) ;) (declaration "int *******pppppppiStack_1f0;" primitive_type (pointer_declarator "*******pppppppiStack_1f0" * (pointer_declarator "******pppppppiStack_1f0" * (pointer_declarator "*****pppppppiStack_1f0" * (pointer_declarator "****pppppppiStack_1f0" * (pointer_declarator "***pppppppiStack_1f0" * (pointer_declarator "**pppppppiStack_1f0" * (pointer_declarator "*pppppppiStack_1f0" * identifier))))))) ;) (declaration "undefined4 uStack_1ec;" type_identifier identifier ;) (declaration "undefined4 uStack_1e8;" type_identifier identifier ;) (declaration "int *******pppppppiStack_1e4;" primitive_type (pointer_declarator "*******pppppppiStack_1e4" * (pointer_declarator "******pppppppiStack_1e4" * (pointer_declarator "*****pppppppiStack_1e4" * (pointer_declarator "****pppppppiStack_1e4" * (pointer_declarator "***pppppppiStack_1e4" * (pointer_declarator "**pppppppiStack_1e4" * (pointer_declarator "*pppppppiStack_1e4" * identifier))))))) ;) (declaration "int *******pppppppiStack_1e0;" primitive_type (pointer_declarator "*******pppppppiStack_1e0" * (pointer_declarator "******pppppppiStack_1e0" * (pointer_declarator "*****pppppppiStack_1e0" * (pointer_declarator "****pppppppiStack_1e0" * (pointer_declarator "***pppppppiStack_1e0" * (pointer_declarator "**pppppppiStack_1e0" * (pointer_declarator "*pppppppiStack_1e0" * identifier))))))) ;) (declaration "int *******pppppppiStack_1dc;" primitive_type (pointer_declarator "*******pppppppiStack_1dc" * (pointer_declarator "******pppppppiStack_1dc" * (pointer_declarator "*****pppppppiStack_1dc" * (pointer_declarator "****pppppppiStack_1dc" * (pointer_declarator "***pppppppiStack_1dc" * (pointer_declarator "**pppppppiStack_1dc" * (pointer_declarator "*pppppppiStack_1dc" * identifier))))))) ;) (declaration "int *******pppppppiStack_1d8;" primitive_type (pointer_declarator "*******pppppppiStack_1d8" * (pointer_declarator "******pppppppiStack_1d8" * (pointer_declarator "*****pppppppiStack_1d8" * (pointer_declarator "****pppppppiStack_1d8" * (pointer_declarator "***pppppppiStack_1d8" * (pointer_declarator "**pppppppiStack_1d8" * (pointer_declarator "*pppppppiStack_1d8" * identifier))))))) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "undefined *puStack_1c0;" type_identifier (pointer_declarator "*puStack_1c0" * identifier) ;) (declaration "int *******pppppppiStack_1b4;" primitive_type (pointer_declarator "*******pppppppiStack_1b4" * (pointer_declarator "******pppppppiStack_1b4" * (pointer_declarator "*****pppppppiStack_1b4" * (pointer_declarator "****pppppppiStack_1b4" * (pointer_declarator "***pppppppiStack_1b4" * (pointer_declarator "**pppppppiStack_1b4" * (pointer_declarator "*pppppppiStack_1b4" * identifier))))))) ;) (declaration "int iStack_1b0;" primitive_type identifier ;) (declaration "int iStack_1ac;" primitive_type identifier ;) (declaration "int iStack_1a8;" primitive_type identifier ;) (declaration "uint uStack_1a4;" type_identifier identifier ;) (declaration "int *******pppppppiStack_1a0;" primitive_type (pointer_declarator "*******pppppppiStack_1a0" * (pointer_declarator "******pppppppiStack_1a0" * (pointer_declarator "*****pppppppiStack_1a0" * (pointer_declarator "****pppppppiStack_1a0" * (pointer_declarator "***pppppppiStack_1a0" * (pointer_declarator "**pppppppiStack_1a0" * (pointer_declarator "*pppppppiStack_1a0" * identifier))))))) ;) (declaration "int *******pppppppiStack_19c;" primitive_type (pointer_declarator "*******pppppppiStack_19c" * (pointer_declarator "******pppppppiStack_19c" * (pointer_declarator "*****pppppppiStack_19c" * (pointer_declarator "****pppppppiStack_19c" * (pointer_declarator "***pppppppiStack_19c" * (pointer_declarator "**pppppppiStack_19c" * (pointer_declarator "*pppppppiStack_19c" * identifier))))))) ;) (declaration "int ******appppppiStack_198 [6];" primitive_type (pointer_declarator "******appppppiStack_198 [6]" * (pointer_declarator "*****appppppiStack_198 [6]" * (pointer_declarator "****appppppiStack_198 [6]" * (pointer_declarator "***appppppiStack_198 [6]" * (pointer_declarator "**appppppiStack_198 [6]" * (pointer_declarator "*appppppiStack_198 [6]" * (array_declarator "appppppiStack_198 [6]" identifier [ number_literal ]))))))) ;) (declaration "uint uStack_180;" type_identifier identifier ;) (declaration "int *******pppppppiStack_f4;" primitive_type (pointer_declarator "*******pppppppiStack_f4" * (pointer_declarator "******pppppppiStack_f4" * (pointer_declarator "*****pppppppiStack_f4" * (pointer_declarator "****pppppppiStack_f4" * (pointer_declarator "***pppppppiStack_f4" * (pointer_declarator "**pppppppiStack_f4" * (pointer_declarator "*pppppppiStack_f4" * identifier))))))) ;) (declaration "int ******appppppiStack_b0 [6];" primitive_type (pointer_declarator "******appppppiStack_b0 [6]" * (pointer_declarator "*****appppppiStack_b0 [6]" * (pointer_declarator "****appppppiStack_b0 [6]" * (pointer_declarator "***appppppiStack_b0 [6]" * (pointer_declarator "**appppppiStack_b0 [6]" * (pointer_declarator "*appppppiStack_b0 [6]" * (array_declarator "appppppiStack_b0 [6]" identifier [ number_literal ]))))))) ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "int local_c;" primitive_type identifier ;) (expression_statement "local_c = *(int *)PTR___stack_chk_guard_0015858c;" (assignment_expression "local_c = *(int *)PTR___stack_chk_guard_0015858c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppppppiVar7 = appppppiStack_b0;" (assignment_expression "pppppppiVar7 = appppppiStack_b0" identifier = identifier) ;) (if_statement "if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" if (parenthesized_expression "((param_2 & 0x10) == 0)" ( (binary_expression "(param_2 & 0x10) == 0" (parenthesized_expression "(param_2 & 0x10)" ( (binary_expression "param_2 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___xstat64_001582e8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___xstat64_001582e8)(3)" identifier = (call_expression "(*(code *)PTR___xstat64_001582e8)(3)" (parenthesized_expression "(*(code *)PTR___xstat64_001582e8)" ( (pointer_expression "*(code *)PTR___xstat64_001582e8" * (cast_expression "(code *)PTR___xstat64_001582e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }) (else_clause "else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" else (compound_statement "{\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3)" identifier = (call_expression "(*(code *)PTR___lxstat64_001582c8)(3)" (parenthesized_expression "(*(code *)PTR___lxstat64_001582c8)" ( (pointer_expression "*(code *)PTR___lxstat64_001582c8" * (cast_expression "(code *)PTR___lxstat64_001582c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }))) (if_statement "if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n    pppppppiVar4 = (int *******)0xffffffff;\n  }" { (expression_statement "pppppppiVar4 = (int *******)0xffffffff;" (assignment_expression "pppppppiVar4 = (int *******)0xffffffff" identifier = (cast_expression "(int *******)0xffffffff" ( (type_descriptor "int *******" primitive_type (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 if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" else (if_statement "if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "((local_98 & 0xf000) == 0xa000)" ( (binary_expression "(local_98 & 0xf000) == 0xa000" (parenthesized_expression "(local_98 & 0xf000)" ( (binary_expression "local_98 & 0xf000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }" { (expression_statement "pppppppiVar4 = (int *******)&SUB_fffffffe;" (assignment_expression "pppppppiVar4 = (int *******)&SUB_fffffffe" identifier = (cast_expression "(int *******)&SUB_fffffffe" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&SUB_fffffffe" & identifier))) ;) }) (else_clause "else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" else (compound_statement "{\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" { (expression_statement "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);" (assignment_expression "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000)" identifier = (cast_expression "(int *******)-(uint)((local_98 & 0xf000) != 0x4000)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(uint)((local_98 & 0xf000) != 0x4000)" - (call_expression "(uint)((local_98 & 0xf000) != 0x4000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((local_98 & 0xf000) != 0x4000)" ( (binary_expression "(local_98 & 0xf000) != 0x4000" (parenthesized_expression "(local_98 & 0xf000)" ( (binary_expression "local_98 & 0xf000" identifier & number_literal) )) != number_literal) )))))) ;) }))))) (if_statement "if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }" if (parenthesized_expression "(local_c == *(int *)PTR___stack_chk_guard_0015858c)" ( (binary_expression "local_c == *(int *)PTR___stack_chk_guard_0015858c" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pppppppiVar4;\n  }" { (return_statement "return pppppppiVar4;" return identifier ;) })) (expression_statement "iVar3 = local_c;" (assignment_expression "iVar3 = local_c" identifier = identifier) ;) (expression_statement "puVar32 = PTR___stack_chk_fail_0015853c;" (assignment_expression "puVar32 = PTR___stack_chk_fail_0015853c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0015853c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015853c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015853c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0015853c" * (cast_expression "(code *)PTR___stack_chk_fail_0015853c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_1c0 = puVar32 + 0x80e64;" (assignment_expression "puStack_1c0 = puVar32 + 0x80e64" identifier = (binary_expression "puVar32 + 0x80e64" identifier + number_literal)) ;) (expression_statement "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);" (assignment_expression "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" identifier = (cast_expression "(int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(puVar32 + 0x7aeb0)" * (pointer_expression "*(undefined4 **)(puVar32 + 0x7aeb0)" * (cast_expression "(undefined4 **)(puVar32 + 0x7aeb0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + 0x7aeb0)" ( (binary_expression "puVar32 + 0x7aeb0" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiVar25 = param_1;" (assignment_expression "pppppppiVar25 = param_1" identifier = identifier) ;) (expression_statement "iStack_1b0 = iVar3;" (assignment_expression "iStack_1b0 = iVar3" identifier = identifier) ;) (expression_statement "pppppppiStack_19c = param_1;" (assignment_expression "pppppppiStack_19c = param_1" identifier = identifier) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))()" identifier = (cast_expression "(int *******)(**(code **)(puVar32 + 0x7ad68))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puVar32 + 0x7ad68))()" (parenthesized_expression "(**(code **)(puVar32 + 0x7ad68))" ( (pointer_expression "**(code **)(puVar32 + 0x7ad68)" * (pointer_expression "*(code **)(puVar32 + 0x7ad68)" * (cast_expression "(code **)(puVar32 + 0x7ad68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + 0x7ad68)" ( (binary_expression "puVar32 + 0x7ad68" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }" { (expression_statement "pppppppiVar6 = param_1;" (assignment_expression "pppppppiVar6 = param_1" identifier = identifier) ;) (expression_statement "pppppppiVar4 = unaff_s7;" (assignment_expression "pppppppiVar4 = unaff_s7" identifier = identifier) ;) (if_statement "if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" if (parenthesized_expression "(((uint)pppppppiVar7 & 1) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 1) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 1)" ( (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }" { (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar7 = (int *******)0x0;" (assignment_expression "pppppppiVar7 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) }) (else_clause "else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" else (compound_statement "{\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" { (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" { (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) }) (else_clause "else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" else (compound_statement "{\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" { (expression_statement "unaff_s2 = (int *******)0x4000;" (assignment_expression "unaff_s2 = (int *******)0x4000" identifier = (cast_expression "(int *******)0x4000" ( (type_descriptor "int *******" primitive_type (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 = (int *******)0x2f;" (assignment_expression "unaff_s3 = (int *******)0x2f" identifier = (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        }" { (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,ppppppiVar21,appppppiStack_198)" ( number_literal , identifier , identifier )))) ;) (expression_statement "pppppppiVar6 = appppppiStack_198;" (assignment_expression "pppppppiVar6 = appppppiStack_198" identifier = identifier) ;) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" if (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" ( (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" ( (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" ( (binary_expression "uStack_180 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" { (expression_statement "unaff_s5 = (int *******)*param_1;" (assignment_expression "unaff_s5 = (int *******)*param_1" identifier = (cast_expression "(int *******)*param_1" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*param_1" * identifier))) ;) (expression_statement "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);" (assignment_expression "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60fc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))))) ;) (expression_statement "pppppppiVar22 = (int *******)((int)unaff_s4 + 2);" (assignment_expression "pppppppiVar22 = (int *******)((int)unaff_s4 + 2)" identifier = (cast_expression "(int *******)((int)unaff_s4 + 2)" ( (type_descriptor "int *******" primitive_type (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_s4 + 2)" ( (binary_expression "(int)unaff_s4 + 2" (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x6098))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6098))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6098)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6098)" * (cast_expression "(code **)(puStack_1c0 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6098)" ( (binary_expression "puStack_1c0 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))))) ;) (expression_statement "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) (if_statement "if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;" if (parenthesized_expression "(pppppppiStack_1a0 == (int *******)0x0)" ( (binary_expression "pppppppiStack_1a0 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000dd804;" goto statement_identifier ;)) (expression_statement "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);" (assignment_expression "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" identifier = (cast_expression "(int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiStack_1a0 + (int)unaff_s4)" ( (binary_expression "(int)pppppppiStack_1a0 + (int)unaff_s4" (cast_expression "(int)pppppppiStack_1a0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(undefined1 *)unaff_s4 = 0x2f;" (assignment_expression "*(undefined1 *)unaff_s4 = 0x2f" (pointer_expression "*(undefined1 *)unaff_s4" * (cast_expression "(undefined1 *)unaff_s4" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined1 *)((int)unaff_s4 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)unaff_s4 + 1) = 0" (pointer_expression "*(undefined1 *)((int)unaff_s4 + 1)" * (cast_expression "(undefined1 *)((int)unaff_s4 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s4 + 1)" ( (binary_expression "(int)unaff_s4 + 1" (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*param_1 = (int ******)pppppppiStack_1a0;" (assignment_expression "*param_1 = (int ******)pppppppiStack_1a0" (pointer_expression "*param_1" * identifier) = (cast_expression "(int ******)pppppppiStack_1a0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) })) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) }))) }))) }) (else_clause "else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" else (compound_statement "{\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" { (expression_statement "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);" (assignment_expression "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" identifier = (cast_expression "(int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" * (cast_expression "(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar4 + iStack_1b0 + -1)" ( (binary_expression "(int)pppppppiVar4 + iStack_1b0 + -1" (binary_expression "(int)pppppppiVar4 + iStack_1b0" (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))))))) ;) (expression_statement "pppppppiVar6 = (int *******)*pppppppiStack_19c;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiStack_19c" identifier = (cast_expression "(int *******)*pppppppiStack_19c" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_19c" * identifier))) ;) (expression_statement "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);" (assignment_expression "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f)" identifier = (cast_expression "(int ******)(uint)(unaff_s6 != (int *******)0x2f)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(uint)(unaff_s6 != (int *******)0x2f)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(unaff_s6 != (int *******)0x2f)" ( (binary_expression "unaff_s6 != (int *******)0x2f" identifier != (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }" { (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))(4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" if (parenthesized_expression "(pppppppiStack_1a0 != (int *******)0x0)" ( (binary_expression "pppppppiStack_1a0 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" { (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" statement_identifier : (expression_statement "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" (assignment_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0" (pointer_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" * (cast_expression "(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiStack_1a0 + iVar3)" ( (binary_expression "(int)pppppppiStack_1a0 + iVar3" (cast_expression "(int)pppppppiStack_1a0" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = number_literal) ;)) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (if_statement "if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" if (parenthesized_expression "(*pppppppiStack_19c != (int ******)0x0)" ( (binary_expression "*pppppppiStack_19c != (int ******)0x0" (pointer_expression "*pppppppiStack_19c" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" { (expression_statement "pppppppiVar22 = pppppppiStack_19c + 1;" (assignment_expression "pppppppiVar22 = pppppppiStack_19c + 1" identifier = (binary_expression "pppppppiStack_19c + 1" identifier + number_literal)) ;) (do_statement "do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          }" { (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiVar7 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar7 = pppppppiVar22 + 1" identifier = (binary_expression "pppppppiVar22 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = *pppppppiVar22;" (assignment_expression "ppppppiVar21 = *pppppppiVar22" identifier = (pointer_expression "*pppppppiVar22" * identifier)) ;) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "pppppppiVar22 = pppppppiVar7;" (assignment_expression "pppppppiVar22 = pppppppiVar7" identifier = identifier) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_19c)" ( identifier ))) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) })) }) (else_clause "else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" else (compound_statement "{\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" { (expression_statement "unaff_s4 = pppppppiStack_19c + 1;" (assignment_expression "unaff_s4 = pppppppiStack_19c + 1" identifier = (binary_expression "pppppppiStack_19c + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar25 = unaff_s4;" (assignment_expression "pppppppiVar25 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      }" { (expression_statement "pppppppiVar27 = pppppppiVar22;" (assignment_expression "pppppppiVar27 = pppppppiVar22" identifier = identifier) ;) (expression_statement "ppppppiVar21 = *pppppppiVar25;" (assignment_expression "ppppppiVar21 = *pppppppiVar25" identifier = (pointer_expression "*pppppppiVar25" * identifier)) ;) (expression_statement "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);" (assignment_expression "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar27 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar27 + 1)" ( (binary_expression "(int)pppppppiVar27 + 1" (cast_expression "(int)pppppppiVar27" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiVar25 = pppppppiVar25 + 1;" (assignment_expression "pppppppiVar25 = pppppppiVar25 + 1" identifier = (binary_expression "pppppppiVar25 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (expression_statement "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);" (assignment_expression "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "((int)((int)pppppppiVar27 + 2) * 4)" ( (binary_expression "(int)((int)pppppppiVar27 + 2) * 4" (cast_expression "(int)((int)pppppppiVar27 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppiVar27 + 2)" ( (binary_expression "(int)pppppppiVar27 + 2" (cast_expression "(int)pppppppiVar27" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) * number_literal) ))))) ;) (expression_statement "pppppppiStack_1a0 = pppppppiVar27;" (assignment_expression "pppppppiStack_1a0 = pppppppiVar27" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" { (expression_statement "unaff_s3 = (int *******)0x0;" (assignment_expression "unaff_s3 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_1ac = (int)pppppppiVar4 + 3;" (assignment_expression "iStack_1ac = (int)pppppppiVar4 + 3" identifier = (binary_expression "(int)pppppppiVar4 + 3" (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;" (assignment_expression "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4" identifier = (binary_expression "(int)unaff_s8 + (int)pppppppiVar4" (cast_expression "(int)unaff_s8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uStack_1a4 = (uint)pppppppiVar7 & 1;" (assignment_expression "uStack_1a4 = (uint)pppppppiVar7 & 1" identifier = (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "unaff_s8 = (int ******)appppppiStack_198;" (assignment_expression "unaff_s8 = (int ******)appppppiStack_198" identifier = (cast_expression "(int ******)appppppiStack_198" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "unaff_s2 = pppppppiVar27;" (assignment_expression "unaff_s2 = pppppppiVar27" identifier = identifier) ;) (labeled_statement "LAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;" statement_identifier : (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;)) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))(iStack_1ac + iVar3)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iStack_1ac + iVar3)" ( (binary_expression "iStack_1ac + iVar3" identifier + identifier) ))))) ;) (expression_statement "*unaff_s2 = (int ******)pppppppiVar7;" (assignment_expression "*unaff_s2 = (int ******)pppppppiVar7" (pointer_expression "*unaff_s2" * identifier) = (cast_expression "(int ******)pppppppiVar7" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiStack_1b4 = unaff_s2;" (assignment_expression "pppppppiStack_1b4 = unaff_s2" identifier = identifier) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 code_r0x000dd9a4;" goto statement_identifier ;)) (if_statement "if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" if (parenthesized_expression "(unaff_s3 != (int *******)0x0)" ( (binary_expression "unaff_s3 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" { (expression_statement "unaff_s3 = pppppppiVar27 + (int)unaff_s3;" (assignment_expression "unaff_s3 = pppppppiVar27 + (int)unaff_s3" identifier = (binary_expression "pppppppiVar27 + (int)unaff_s3" identifier + (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (do_statement "do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);" do (compound_statement "{\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          }" { (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*pppppppiVar27)" ( (pointer_expression "*pppppppiVar27" * identifier) ))) ;) (expression_statement "pppppppiVar27 = pppppppiVar27 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar27 + 1" identifier = (binary_expression "pppppppiVar27 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(unaff_s3 != pppppppiVar27)" ( (binary_expression "unaff_s3 != pppppppiVar27" identifier != identifier) )) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_1a0)" ( identifier ))) ;) (expression_statement "pppppppiStack_1a0 = (int *******)0x0;" (assignment_expression "pppppppiStack_1a0 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" identifier = identifier) ;) })) }))) }))) (labeled_statement "LAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" statement_identifier : (if_statement "if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" if (parenthesized_expression "(pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4))" ( (binary_expression "pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" identifier == (cast_expression "(int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(puStack_1c0 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(puStack_1c0 + -0x5fb4)" * (cast_expression "(undefined4 **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5fb4)" ( (binary_expression "puStack_1c0 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiStack_1a0;\n  }" { (return_statement "return pppppppiStack_1a0;" return identifier ;) }))) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x6004)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x6004)" * (cast_expression "(code **)(puStack_1c0 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6004)" ( (binary_expression "puStack_1c0 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = FUN_000ddacc;" (assignment_expression "pcVar35 = FUN_000ddacc" identifier = identifier) ;) (expression_statement "pppppppiVar25 = pppppppiStack_f4;" (assignment_expression "pppppppiVar25 = pppppppiStack_f4" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1f8 = pcVar33 + 0x80a74;" (assignment_expression "pcStack_1f8 = pcVar33 + 0x80a74" identifier = (binary_expression "pcVar33 + 0x80a74" identifier + number_literal)) ;) (expression_statement "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);" (assignment_expression "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0)" identifier = (cast_expression "(int *******)**(int **)(pcVar33 + 0x7aac0)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcVar33 + 0x7aac0)" * (pointer_expression "*(int **)(pcVar33 + 0x7aac0)" * (cast_expression "(int **)(pcVar33 + 0x7aac0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7aac0)" ( (binary_expression "pcVar33 + 0x7aac0" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiStack_1e0 = pppppppiVar7;" (assignment_expression "pppppppiStack_1e0 = pppppppiVar7" identifier = identifier) ;) (expression_statement "pppppppiStack_1dc = pppppppiVar6;" (assignment_expression "pppppppiStack_1dc = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiStack_1d8 = unaff_s2;" (assignment_expression "pppppppiStack_1d8 = unaff_s2" identifier = identifier) ;) (expression_statement "pcStack_1d4 = pcVar35;" (assignment_expression "pcStack_1d4 = pcVar35" identifier = identifier) ;) (expression_statement "uVar5 = (**(code **)(pcVar33 + 0x7aa14))();" (assignment_expression "uVar5 = (**(code **)(pcVar33 + 0x7aa14))()" identifier = (call_expression "(**(code **)(pcVar33 + 0x7aa14))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7aa14))" ( (pointer_expression "**(code **)(pcVar33 + 0x7aa14)" * (pointer_expression "*(code **)(pcVar33 + 0x7aa14)" * (cast_expression "(code **)(pcVar33 + 0x7aa14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7aa14)" ( (binary_expression "pcVar33 + 0x7aa14" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "pppppppiVar7 = pppppppiVar25;" (assignment_expression "pppppppiVar7 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" if (parenthesized_expression "(uVar5 < 2)" ( (binary_expression "uVar5 < 2" identifier < number_literal) )) (compound_statement "{\n    FUN_000dce8c();\n  }" { (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" else (compound_statement "{\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" { (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" identifier = (cast_expression "(int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_1f8 + -0x60fc))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x60fc)" * (cast_expression "(code **)(pcStack_1f8 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x60fc)" ( (binary_expression "pcStack_1f8 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" identifier = (call_expression "xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" identifier (argument_list "(&pppppppiStack_1f0,0,pppppppiVar25)" ( (pointer_expression "&pppppppiStack_1f0" & identifier) , number_literal , identifier )))) ;) (expression_statement "unaff_s2 = pppppppiStack_1f0;" (assignment_expression "unaff_s2 = pppppppiStack_1f0" identifier = identifier) ;) (if_statement "if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      FUN_000dce8c();\n    }" { (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" else (compound_statement "{\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" { (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" identifier = number_literal) ;) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);" do (compound_statement "{\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      }" { (if_statement "if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;" if (parenthesized_expression "(pppppppiStack_1f0 == (int *******)0x0)" ( (binary_expression "pppppppiStack_1f0 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddc04;" goto statement_identifier ;)) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;" if (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x0)" ( (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar3]" identifier [ identifier ]) == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000ddbf8;" goto statement_identifier ;)) (expression_statement "iVar17 = iVar3;" (assignment_expression "iVar17 = iVar3" identifier = identifier) ;) (expression_statement "iVar12 = iVar3 + 1;" (assignment_expression "iVar12 = iVar3 + 1" identifier = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" if (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x5c)" ( (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x5c" (subscript_expression "pppppppiStack_1f0[iVar3]" identifier [ identifier ]) == (cast_expression "(int ******)0x5c" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" { (expression_statement "iVar17 = iVar3 + 1;" (assignment_expression "iVar17 = iVar3 + 1" identifier = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (expression_statement "iVar12 = iVar3 + 2;" (assignment_expression "iVar12 = iVar3 + 2" identifier = (binary_expression "iVar3 + 2" identifier + number_literal)) ;) })) (expression_statement "iVar3 = iVar12;" (assignment_expression "iVar3 = iVar12" identifier = identifier) ;) (expression_statement "iVar23 = iVar23 + 1;" (assignment_expression "iVar23 = iVar23 + 1" identifier = (binary_expression "iVar23 + 1" identifier + number_literal)) ;) (expression_statement "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];" (assignment_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17]" (pointer_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24)" * (cast_expression "(int *******)((int)pppppppiStack_1f0 + iVar24)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiStack_1f0 + iVar24)" ( (binary_expression "(int)pppppppiStack_1f0 + iVar24" (cast_expression "(int)pppppppiStack_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (subscript_expression "pppppppiStack_1f0[iVar17]" identifier [ identifier ])) ;) (expression_statement "iVar24 = iVar24 + 4;" (assignment_expression "iVar24 = iVar24 + 4" identifier = (binary_expression "iVar24 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppiStack_1f0[iVar17] != (int ******)0x0)" ( (binary_expression "pppppppiStack_1f0[iVar17] != (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar17]" identifier [ identifier ]) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (if_statement "if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" if (parenthesized_expression "(pppppppiStack_1f0 != (int *******)0x0)" ( (binary_expression "pppppppiStack_1f0 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" { (labeled_statement "LAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;" statement_identifier : (expression_statement "pppppppiStack_1f0[iVar23] = (int ******)0x0;" (assignment_expression "pppppppiStack_1f0[iVar23] = (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar23]" identifier [ identifier ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;)) })) (labeled_statement "LAB_000ddc04:\n      uStack_1ec = 0;" statement_identifier : (expression_statement "uStack_1ec = 0;" (assignment_expression "uStack_1ec = 0" identifier = number_literal) ;)) (expression_statement "uStack_1e8 = 0;" (assignment_expression "uStack_1e8 = 0" identifier = number_literal) ;) (expression_statement "pppppppiVar22 = (int *******)&pppppppiStack_1f0;" (assignment_expression "pppppppiVar22 = (int *******)&pppppppiStack_1f0" identifier = (cast_expression "(int *******)&pppppppiStack_1f0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppppiStack_1f0" & identifier))) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);" (call_expression "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f9c))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f9c)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f9c)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f9c)" ( (binary_expression "pcStack_1f8 + -0x5f9c" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25,pppppppiVar22,pppppppiVar6)" ( identifier , identifier , identifier ))) ;) (expression_statement "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);" (assignment_expression "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" identifier = (cast_expression "(int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar25 + (int)pppppppiVar6)" ( (binary_expression "(int)pppppppiVar25 + (int)pppppppiVar6" (cast_expression "(int)pppppppiVar25" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(undefined1 *)pppppppiVar25 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar25 = 0" (pointer_expression "*(undefined1 *)pppppppiVar25" * (cast_expression "(undefined1 *)pppppppiVar25" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "pppppppiVar7 = pppppppiStack_1f0;" (assignment_expression "pppppppiVar7 = pppppppiStack_1f0" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f94))();" (call_expression "(**(code **)(pcStack_1f8 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f94)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f94)" ( (binary_expression "pcStack_1f8 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) }))) (if_statement "if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" if (parenthesized_expression "(pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4))" ( (binary_expression "pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)" identifier == (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" { (return_statement "return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);" return (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) )))))) ;) })) (expression_statement "pcVar33 = *(code **)(pcStack_1f8 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_1f8 + -0x6004)" identifier = (pointer_expression "*(code **)(pcStack_1f8 + -0x6004)" * (cast_expression "(code **)(pcStack_1f8 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x6004)" ( (binary_expression "pcStack_1f8 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_pattern_p;" (assignment_expression "pcVar35 = glob_pattern_p" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_220 = pcVar33 + 0x808a8;" (assignment_expression "pcStack_220 = pcVar33 + 0x808a8" identifier = (binary_expression "pcVar33 + 0x808a8" identifier + number_literal)) ;) (expression_statement "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);" (assignment_expression "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" identifier = (cast_expression "(int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a8f4)" * (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a8f4)" * (cast_expression "(undefined4 **)(pcVar33 + 0x7a8f4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a8f4)" ( (binary_expression "pcVar33 + 0x7a8f4" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiStack_210 = pppppppiVar25;" (assignment_expression "pppppppiStack_210 = pppppppiVar25" identifier = identifier) ;) (expression_statement "pcStack_20c = pcVar35;" (assignment_expression "pcStack_20c = pcVar35" identifier = identifier) ;) (expression_statement "iVar3 = (**(code **)(pcVar33 + 0x7a848))();" (assignment_expression "iVar3 = (**(code **)(pcVar33 + 0x7a848))()" identifier = (call_expression "(**(code **)(pcVar33 + 0x7a848))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7a848))" ( (pointer_expression "**(code **)(pcVar33 + 0x7a848)" * (pointer_expression "*(code **)(pcVar33 + 0x7a848)" * (cast_expression "(code **)(pcVar33 + 0x7a848)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a848)" ( (binary_expression "pcVar33 + 0x7a848" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" if (parenthesized_expression "(iVar3 == 1)" ( (binary_expression "iVar3 == 1" identifier == number_literal) )) (compound_statement "{\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }" { (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" identifier = (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dccf0(pppppppiVar7)" identifier (argument_list "(pppppppiVar7)" ( identifier ))))) ;) }) (else_clause "else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" else (compound_statement "{\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" { (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar27 = pppppppiVar7;" (assignment_expression "pppppppiVar27 = pppppppiVar7" identifier = identifier) ;) (expression_statement "iVar3 = xdupmbstowcs(&pppppppiStack_218);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_218)" identifier = (call_expression "xdupmbstowcs(&pppppppiStack_218)" identifier (argument_list "(&pppppppiStack_218)" ( (pointer_expression "&pppppppiStack_218" & identifier) )))) ;) (if_statement "if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }" { (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" identifier = (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dccf0(pppppppiVar7)" identifier (argument_list "(pppppppiVar7)" ( identifier ))))) ;) (expression_statement "pppppppiVar7 = pppppppiVar27;" (assignment_expression "pppppppiVar7 = pppppppiVar27" identifier = identifier) ;) }) (else_clause "else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" else (compound_statement "{\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" { (expression_statement "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);" (assignment_expression "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" identifier = (cast_expression "(int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" ( (binary_expression "*(int *)(pcStack_220 + -0x7f90) + -0x305c" (pointer_expression "*(int *)(pcStack_220 + -0x7f90)" * (cast_expression "(int *)(pcStack_220 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_220 + -0x7f90)" ( (binary_expression "pcStack_220 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (while_statement "while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" { (expression_statement "ppppppiVar21 = *pppppppiStack_218;" (assignment_expression "ppppppiVar21 = *pppppppiStack_218" identifier = (pointer_expression "*pppppppiStack_218" * identifier)) ;) (expression_statement "pppppppiStack_218 = pppppppiStack_218 + 1;" (assignment_expression "pppppppiStack_218 = pppppppiStack_218 + 1" identifier = (binary_expression "pppppppiStack_218 + 1" identifier + number_literal)) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) break;" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (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 "uVar5 = (int)ppppppiVar21 - 0x21;" (assignment_expression "uVar5 = (int)ppppppiVar21 - 0x21" identifier = (binary_expression "(int)ppppppiVar21 - 0x21" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) ;) (if_statement "if (uVar5 < 0x3d) {\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(uVar5 < 0x3d)" ( (binary_expression "uVar5 < 0x3d" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" { comment comment (expression_statement "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();" (assignment_expression "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" identifier = (cast_expression "(int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" (parenthesized_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))" ( (pointer_expression "*(pcStack_220 + (int)pppppppiVar22[uVar5])" * (parenthesized_expression "(pcStack_220 + (int)pppppppiVar22[uVar5])" ( (binary_expression "pcStack_220 + (int)pppppppiVar22[uVar5]" identifier + (cast_expression "(int)pppppppiVar22[uVar5]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppiVar22[uVar5]" identifier [ identifier ]))) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) })) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_220 + -0x5f94))();" (call_expression "(**(code **)(pcStack_220 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_220 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_220 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_220 + -0x5f94)" * (cast_expression "(code **)(pcStack_220 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x5f94)" ( (binary_expression "pcStack_220 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiVar7 = pppppppiStack_218;" (assignment_expression "pppppppiVar7 = pppppppiStack_218" identifier = identifier) ;) }))) }))) (if_statement "if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }" if (parenthesized_expression "(pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4))" ( (binary_expression "pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" identifier == (cast_expression "(int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(pcStack_220 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(pcStack_220 + -0x5fb4)" * (cast_expression "(undefined4 **)(pcStack_220 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x5fb4)" ( (binary_expression "pcStack_220 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiVar25;\n  }" { (return_statement "return pppppppiVar25;" return identifier ;) })) (expression_statement "pcVar33 = *(code **)(pcStack_220 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_220 + -0x6004)" identifier = (pointer_expression "*(code **)(pcStack_220 + -0x6004)" * (cast_expression "(code **)(pcStack_220 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x6004)" ( (binary_expression "pcStack_220 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_vector;" (assignment_expression "pcVar35 = glob_vector" identifier = identifier) ;) (expression_statement "pppppppiVar27 = pppppppiStack_214;" (assignment_expression "pppppppiVar27 = pppppppiStack_214" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_348 = pcVar33 + 0x80714;" (assignment_expression "pcStack_348 = pcVar33 + 0x80714" identifier = (binary_expression "pcVar33 + 0x80714" identifier + number_literal)) ;) (expression_statement "puVar34 = auStack_358;" (assignment_expression "puVar34 = auStack_358" identifier = identifier) ;) (expression_statement "puVar8 = auStack_358;" (assignment_expression "puVar8 = auStack_358" identifier = identifier) ;) (expression_statement "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);" (assignment_expression "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760)" identifier = (cast_expression "(char *)**(undefined4 **)(pcVar33 + 0x7a760)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a760)" * (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a760)" * (cast_expression "(undefined4 **)(pcVar33 + 0x7a760)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a760)" ( (binary_expression "pcVar33 + 0x7a760" identifier + number_literal) ))))))) ;) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar28 = unaff_s5;" (assignment_expression "pppppppiVar28 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppiStack_304 = pppppppiVar22;" (assignment_expression "pppppppiStack_304 = pppppppiVar22" identifier = identifier) ;) (expression_statement "pppppppiStack_258 = pppppppiVar25;" (assignment_expression "pppppppiStack_258 = pppppppiVar25" identifier = identifier) ;) (expression_statement "pppppppiStack_254 = pppppppiVar6;" (assignment_expression "pppppppiStack_254 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiStack_250 = unaff_s2;" (assignment_expression "pppppppiStack_250 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppiStack_24c = unaff_s3;" (assignment_expression "pppppppiStack_24c = unaff_s3" identifier = identifier) ;) (expression_statement "pppppppiStack_248 = unaff_s4;" (assignment_expression "pppppppiStack_248 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppiStack_244 = unaff_s5;" (assignment_expression "pppppppiStack_244 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppiStack_240 = unaff_s6;" (assignment_expression "pppppppiStack_240 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppiStack_23c = pppppppiVar4;" (assignment_expression "pppppppiStack_23c = pppppppiVar4" identifier = identifier) ;) (expression_statement "ppppppiStack_238 = unaff_s8;" (assignment_expression "ppppppiStack_238 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_234 = pcVar35;" (assignment_expression "pcStack_234 = pcVar35" identifier = identifier) ;) (if_statement "if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" if (parenthesized_expression "((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'))" ( (binary_expression "(pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" (parenthesized_expression "(pppppppiVar27 == (int *******)0x0)" ( (binary_expression "pppppppiVar27 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "(pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" ( (comma_expression "pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'" (assignment_expression "pppppppiVar28 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) , (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" * (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" { (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar3 = FUN_000dd618(pppppppiVar22);" (assignment_expression "iVar3 = FUN_000dd618(pppppppiVar22)" identifier = (call_expression "FUN_000dd618(pppppppiVar22)" identifier (argument_list "(pppppppiVar22)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" { (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) })) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" identifier = identifier) ;) (expression_statement "pppppppiVar25 = &ppppppiStack_350;" (assignment_expression "pppppppiVar25 = &ppppppiStack_350" identifier = (pointer_expression "&ppppppiStack_350" & identifier)) ;) (expression_statement "ppppppiStack_350 = (int ******)0x0;" (assignment_expression "ppppppiStack_350 = (int ******)0x0" identifier = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);" (assignment_expression "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal ))))) ;) (expression_statement "bVar1 = puVar8 == (undefined1 *)0x0;" (assignment_expression "bVar1 = puVar8 == (undefined1 *)0x0" identifier = (binary_expression "puVar8 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" if (parenthesized_expression "(bVar1)" ( identifier )) (compound_statement "{\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" else (compound_statement "{\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" { (expression_statement "puStack_34c = puVar8;" (assignment_expression "puStack_34c = puVar8" identifier = identifier) ;) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" identifier = number_literal) ;) }))) (expression_statement "uStack_30c = (uint)bVar1;" (assignment_expression "uStack_30c = (uint)bVar1" identifier = (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pppppppiVar28 = (int *******)(uint)!bVar1;" (assignment_expression "pppppppiVar28 = (int *******)(uint)!bVar1" identifier = (cast_expression "(int *******)(uint)!bVar1" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)!bVar1" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar1" ! identifier)))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "puVar8 = auStack_360;" (assignment_expression "puVar8 = auStack_360" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" { (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;" if (parenthesized_expression "(*(char *)pppppppiVar27 == '\0')" ( (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" * (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;)) (expression_statement "iStack_314 = 1;" (assignment_expression "iStack_314 = 1" identifier = number_literal) ;) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" identifier = identifier) ;) (goto_statement "goto LAB_000ddf3c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ddefc:\n    puVar34 = puVar8;" statement_identifier : (expression_statement "puVar34 = puVar8;" (assignment_expression "puVar34 = puVar8" identifier = identifier) ;)) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "iStack_314 = 0;" (assignment_expression "iStack_314 = 0" identifier = number_literal) ;) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" identifier = number_literal) ;) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" statement_identifier : (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier )))) ;)) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (if_statement "if (iStack_314 != 0) goto LAB_000ddefc;" if (parenthesized_expression "(iStack_314 != 0)" ( (binary_expression "iStack_314 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ddefc;" goto statement_identifier ;)) (expression_statement "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);" (assignment_expression "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote)" identifier = (call_expression "glob_pattern_p((char *)pppppppiVar27,(int)__quote)" identifier (argument_list "((char *)pppppppiVar27,(int)__quote)" ( (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)__quote" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (if_statement "if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" if (parenthesized_expression "(iVar23 == 0)" ( (binary_expression "iVar23 == 0" identifier == number_literal) )) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" { (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar23 = FUN_000dd618(pppppppiStack_304);" (assignment_expression "iVar23 = FUN_000dd618(pppppppiStack_304)" identifier = (call_expression "FUN_000dd618(pppppppiStack_304)" identifier (argument_list "(pppppppiStack_304)" ( identifier )))) ;) (if_statement "if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" if (parenthesized_expression "(-1 < iVar23)" ( (binary_expression "-1 < iVar23" number_literal < identifier) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_304)" ( identifier ))))) ;) (expression_statement "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));" (assignment_expression "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" identifier = (cast_expression "(int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" ( (cast_expression "(undefined1 *)((int)pppppppiVar7 + iVar3 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar7 + iVar3 + 2)" ( (binary_expression "(int)pppppppiVar7 + iVar3 + 2" (binary_expression "(int)pppppppiVar7 + iVar3" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) ))))) ;) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (if_statement "if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }" { (if_statement "if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" else (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) }) (else_clause "else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" else (if_statement "if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }" { (expression_statement "__quote = pppppppiVar27;" (assignment_expression "__quote = pppppppiVar27" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" else (compound_statement "{\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" { (expression_statement "(**(code **)(pcStack_348 + -0x6074))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "FUN_000ddacc(iVar3);" (call_expression "FUN_000ddacc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6,pppppppiStack_304)" ( identifier , identifier ))) ;) (expression_statement "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" * (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar6 + (int)pppppppiVar7)" ( (binary_expression "(int)pppppppiVar6 + (int)pppppppiVar7" (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = number_literal) ;) (expression_statement "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" ( (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" ( (binary_expression "(int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)" (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)((int)pppppppiVar7 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppiVar7 + 1)" ( (binary_expression "(int)pppppppiVar7 + 1" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) , identifier ))) ;) (expression_statement "__quote = pppppppiVar6;" (assignment_expression "__quote = pppppppiVar6" identifier = identifier) ;) (expression_statement "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);" (assignment_expression "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6278))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6278)" * (pointer_expression "*(code **)(pcStack_348 + -0x6278)" * (cast_expression "(code **)(pcStack_348 + -0x6278)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6278)" ( (binary_expression "pcStack_348 + -0x6278" identifier + number_literal) ))))) )) (argument_list "(3,pppppppiVar6,auStack_300)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" if (parenthesized_expression "(iVar23 < 0)" ( (binary_expression "iVar23 < 0" identifier < number_literal) )) (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "pppppppiVar25 = (int *******)(puVar34 + 8);" (assignment_expression "pppppppiVar25 = (int *******)(puVar34 + 8)" identifier = (cast_expression "(int *******)(puVar34 + 8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar34 + 8)" ( (binary_expression "puVar34 + 8" identifier + number_literal) )))) ;) (expression_statement "*pppppppiVar25 = (int ******)0x0;" (assignment_expression "*pppppppiVar25 = (int ******)0x0" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "*(int *)(puVar34 + 0xc) = iVar3;" (assignment_expression "*(int *)(puVar34 + 0xc) = iVar3" (pointer_expression "*(int *)(puVar34 + 0xc)" * (cast_expression "(int *)(puVar34 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + 0xc)" ( (binary_expression "puVar34 + 0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "pppppppiVar28 = (int *******)0x1;" (assignment_expression "pppppppiVar28 = (int *******)0x1" identifier = (cast_expression "(int *******)0x1" ( (type_descriptor "int *******" primitive_type (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 "puVar8 = puVar34 + -8;" (assignment_expression "puVar8 = puVar34 + -8" identifier = (binary_expression "puVar34 + -8" identifier + number_literal)) ;) }))))) (goto_statement "goto LAB_000ddefc;" goto statement_identifier ;) })) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" else (compound_statement "{\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" { (expression_statement "iStack_308 = (**(code **)(pcStack_348 + -0x6288))();" (assignment_expression "iStack_308 = (**(code **)(pcStack_348 + -0x6288))()" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6288))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6288))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6288)" * (pointer_expression "*(code **)(pcStack_348 + -0x6288)" * (cast_expression "(code **)(pcStack_348 + -0x6288)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6288)" ( (binary_expression "pcStack_348 + -0x6288" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" if (parenthesized_expression "(iStack_308 != 0)" ( (binary_expression "iStack_308 != 0" identifier != number_literal) )) (compound_statement "{\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" { (expression_statement "uStack_320 = 1;" (assignment_expression "uStack_320 = 1" identifier = number_literal) ;) (if_statement "if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }" if (parenthesized_expression "(**(int **)(pcStack_348 + -0x70d8) != 0)" ( (binary_expression "**(int **)(pcStack_348 + -0x70d8) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70d8)" * (pointer_expression "*(int **)(pcStack_348 + -0x70d8)" * (cast_expression "(int **)(pcStack_348 + -0x70d8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x70d8)" ( (binary_expression "pcStack_348 + -0x70d8" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n        uStack_320 = 5;\n      }" { (expression_statement "uStack_320 = 5;" (assignment_expression "uStack_320 = 5" identifier = number_literal) ;) })) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" identifier = (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" * (cast_expression "(int **)(pcStack_348 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x7bf8)" ( (binary_expression "pcStack_348 + -0x7bf8" identifier + number_literal) ))))) ;) (if_statement "if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" if (parenthesized_expression "(**(int **)(pcStack_348 + -0x70e4) != 0)" ( (binary_expression "**(int **)(pcStack_348 + -0x70e4) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70e4)" * (pointer_expression "*(int **)(pcStack_348 + -0x70e4)" * (cast_expression "(int **)(pcStack_348 + -0x70e4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x70e4)" ( (binary_expression "pcStack_348 + -0x70e4" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" { (expression_statement "uStack_320 = uStack_320 | 0x10;" (assignment_expression "uStack_320 = uStack_320 | 0x10" identifier = (binary_expression "uStack_320 | 0x10" identifier | number_literal)) ;) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" identifier = (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" * (cast_expression "(int **)(pcStack_348 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x7bf8)" ( (binary_expression "pcStack_348 + -0x7bf8" identifier + number_literal) ))))) ;) })) (if_statement "if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }" if (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) (compound_statement "{\n        uStack_320 = uStack_320 | 0x20;\n      }" { (expression_statement "uStack_320 = uStack_320 | 0x20;" (assignment_expression "uStack_320 = uStack_320 | 0x20" identifier = (binary_expression "uStack_320 | 0x20" identifier | number_literal)) ;) })) (expression_statement "uStack_330 = (uint)pppppppiVar7 & 0x210;" (assignment_expression "uStack_330 = (uint)pppppppiVar7 & 0x210" identifier = (binary_expression "(uint)pppppppiVar7 & 0x210" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar5 = (int)pppppppiVar7 >> 2 & 4;" (assignment_expression "uVar5 = (int)pppppppiVar7 >> 2 & 4" identifier = (binary_expression "(int)pppppppiVar7 >> 2 & 4" (binary_expression "(int)pppppppiVar7 >> 2" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) & number_literal)) ;) (expression_statement "uStack_33c = (uint)pppppppiVar7 & 0x100;" (assignment_expression "uStack_33c = (uint)pppppppiVar7 & 0x100" identifier = (binary_expression "(uint)pppppppiVar7 & 0x100" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uStack_338 = uVar5 | 8;" (assignment_expression "uStack_338 = uVar5 | 8" identifier = (binary_expression "uVar5 | 8" identifier | number_literal)) ;) (if_statement "if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }" if (parenthesized_expression "(uStack_33c == 0)" ( (binary_expression "uStack_33c == 0" identifier == number_literal) )) (compound_statement "{\n        uStack_338 = uVar5;\n      }" { (expression_statement "uStack_338 = uVar5;" (assignment_expression "uStack_338 = uVar5" identifier = identifier) ;) })) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);" (assignment_expression "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" identifier = (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x3104)" ( (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x3104" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" * (cast_expression "(int *)(pcStack_348 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);" (assignment_expression "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" identifier = (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" ( (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x29e8" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" * (cast_expression "(int *)(pcStack_348 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);" (assignment_expression "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990)" identifier = (pointer_expression "*(undefined4 *)(pcStack_348 + -0x6990)" * (cast_expression "(undefined4 *)(pcStack_348 + -0x6990)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) ))))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (labeled_statement "LAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" statement_identifier : (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" statement_identifier : (do_statement "do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" do (compound_statement "{\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      }" { (expression_statement "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);" (assignment_expression "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cfc)" * (cast_expression "(int ********)(pcStack_348 + -0x7cfc)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cfc)" ( (binary_expression "pcStack_348 + -0x7cfc" identifier + number_literal) ))))) ;) (do_statement "do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);" do (compound_statement "{\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        }" { (if_statement "if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" ( (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (if_statement "if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(*pppppppiVar4 != (int ******)0x0)" ( (binary_expression "*pppppppiVar4 != (int ******)0x0" (pointer_expression "*pppppppiVar4" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6964))(2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6964))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6964)" * (pointer_expression "*(code **)(pcStack_348 + -0x6964)" * (cast_expression "(code **)(pcStack_348 + -0x6964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6964)" ( (binary_expression "pcStack_348 + -0x6964" identifier + number_literal) ))))) )) (argument_list "(2)" ( number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (expression_statement "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);" (assignment_expression "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" identifier = (cast_expression "(int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_348 + -0x6214))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6214))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6214)" * (pointer_expression "*(code **)(pcStack_348 + -0x6214)" * (cast_expression "(code **)(pcStack_348 + -0x6214)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6214)" ( (binary_expression "pcStack_348 + -0x6214" identifier + number_literal) ))))) )) (argument_list "(iStack_308)" ( identifier ))))) ;) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000de200;" if (parenthesized_expression "(piVar15 == (int *)0x0)" ( (binary_expression "piVar15 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000de200;" goto statement_identifier ;)) }) while (parenthesized_expression "(*piVar15 == 0 && piVar15[1] == 0)" ( (binary_expression "*piVar15 == 0 && piVar15[1] == 0" (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) && (binary_expression "piVar15[1] == 0" (subscript_expression "piVar15[1]" identifier [ number_literal ]) == number_literal)) )) ;) (expression_statement "uVar5 = (**(code **)(pcStack_348 + -0x6060))();" (assignment_expression "uVar5 = (**(code **)(pcStack_348 + -0x6060))()" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6060))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6060))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6060)" * (pointer_expression "*(code **)(pcStack_348 + -0x6060)" * (cast_expression "(code **)(pcStack_348 + -0x6060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6060)" ( (binary_expression "pcStack_348 + -0x6060" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" if (parenthesized_expression "(1 < uVar5)" ( (binary_expression "1 < uVar5" number_literal < identifier) )) (compound_statement "{\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" { (expression_statement "__quote = (int *******)((int)piVar15 + 0x13);" (assignment_expression "__quote = (int *******)((int)piVar15 + 0x13)" identifier = (cast_expression "(int *******)((int)piVar15 + 0x13)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)piVar15 + 0x13)" ( (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);" (assignment_expression "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" identifier = (call_expression "FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" identifier (argument_list "(pppppppiVar27,__quote,pppppppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_000de028;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) })) (expression_statement "pppppppiVar25 = (int *******)((int)piVar15 + 0x13);" (assignment_expression "pppppppiVar25 = (int *******)((int)piVar15 + 0x13)" identifier = (cast_expression "(int *******)((int)piVar15 + 0x13)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)piVar15 + 0x13)" ( (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" identifier = identifier) ;) (expression_statement "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);" (assignment_expression "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" identifier = (call_expression "(*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" (parenthesized_expression "(*pcStack_31c)" ( (pointer_expression "*pcStack_31c" * identifier) )) (argument_list "(pppppppiVar27,pppppppiVar25,pppppppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_000de028;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) (if_statement "if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x18) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x18) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x18)" ( (binary_expression "(uint)pppppppiVar7 & 0x18" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }" { (labeled_statement "LAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" statement_identifier : (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" ( (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" { (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" if (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" ( (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" ( (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) })) (labeled_statement "LAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" statement_identifier : (expression_statement "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;)) (expression_statement "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);" (assignment_expression "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9)" identifier = (cast_expression "(int *******)fnx_fromfs(pppppppiVar25,uVar9)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "fnx_fromfs(pppppppiVar25,uVar9)" identifier (argument_list "(pppppppiVar25,uVar9)" ( identifier , identifier ))))) ;) (expression_statement "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);" (assignment_expression "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320)" identifier = (call_expression "strmatch(pppppppiVar27,__quote,uStack_320)" identifier (argument_list "(pppppppiVar27,__quote,uStack_320)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 == 1) goto LAB_000de028;" if (parenthesized_expression "(iVar3 == 1)" ( (binary_expression "iVar3 == 1" identifier == number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) (if_statement "if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" if (parenthesized_expression "(iStack_314 < 100000)" ( (binary_expression "iStack_314 < 100000" identifier < number_literal) )) (compound_statement "{\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }" { (expression_statement "unaff_s6 = (int *******)(puVar34 + 8);" (assignment_expression "unaff_s6 = (int *******)(puVar34 + 8)" identifier = (cast_expression "(int *******)(puVar34 + 8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar34 + 8)" ( (binary_expression "puVar34 + 8" identifier + number_literal) )))) ;) (expression_statement "iStack_314 = iStack_314 + 8;" (assignment_expression "iStack_314 = iStack_314 + 8" identifier = (binary_expression "iStack_314 + 8" identifier + number_literal)) ;) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) ))))) ;) (expression_statement "puVar34 = puVar34 + -8;" (assignment_expression "puVar34 = puVar34 + -8" identifier = (binary_expression "puVar34 + -8" identifier + number_literal)) ;) }) (else_clause "else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" else (compound_statement "{\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" { (expression_statement "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;) (if_statement "if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                unaff_s2 = unaff_s6;\n              }" { (expression_statement "unaff_s2 = unaff_s6;" (assignment_expression "unaff_s2 = unaff_s6" identifier = identifier) ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" if (parenthesized_expression "(unaff_s6 == (int *******)0x0)" ( (binary_expression "unaff_s6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" { (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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                  uStack_30c = 1;\n                }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) }) (else_clause "else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" else (compound_statement "{\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar4)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) }))) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) }))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de200;" goto statement_identifier ;) })) (expression_statement "*unaff_s6 = (int ******)pppppppiVar6;" (assignment_expression "*unaff_s6 = (int ******)pppppppiVar6" (pointer_expression "*unaff_s6" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "unaff_s6[1] = (int ******)pppppppiVar4;" (assignment_expression "unaff_s6[1] = (int ******)pppppppiVar4" (subscript_expression "unaff_s6[1]" identifier [ number_literal ]) = (cast_expression "(int ******)pppppppiVar4" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60fc))" ( (pointer_expression "**(code **)(pcVar33 + -0x60fc)" * (pointer_expression "*(code **)(pcVar33 + -0x60fc)" * (cast_expression "(code **)(pcVar33 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x60fc)" ( (binary_expression "pcVar33 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" * (cast_expression "(code **)(pcStack_348 + -0x5f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f88)" ( (binary_expression "pcStack_348 + -0x5f88" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar4,pppppppiVar25,iVar3 + 1)" ( identifier , identifier , (binary_expression "iVar3 + 1" identifier + number_literal) ))) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" identifier = identifier) ;) (expression_statement "pppppppiVar6 = unaff_s6;" (assignment_expression "pppppppiVar6 = unaff_s6" identifier = identifier) ;) (goto_statement "goto LAB_000de028;" goto statement_identifier ;) }))) (if_statement "if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" if (parenthesized_expression "(iStack_32c == 0)" ( (binary_expression "iStack_32c == 0" identifier == number_literal) )) (compound_statement "{\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" { (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" identifier = identifier) ;) (expression_statement "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);" (assignment_expression "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" identifier = (cast_expression "(int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" identifier (argument_list "(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" ( identifier , identifier , (binary_expression "(uint)pppppppiVar7 & 0xfffffdff" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "pppppppiStack_340 = unaff_s6;" (assignment_expression "pppppppiStack_340 = unaff_s6" identifier = identifier) ;) (if_statement "if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" if (parenthesized_expression "(unaff_s6 != (int *******)0x0)" ( (binary_expression "unaff_s6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" { (if_statement "if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" if (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" ( (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" { (expression_statement "iStack_318 = iStack_32c;" (assignment_expression "iStack_318 = iStack_32c" identifier = identifier) ;) (expression_statement "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de4c4;" goto statement_identifier ;) })) (if_statement "if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" if (parenthesized_expression "(unaff_s6 != *(int ********)(pcStack_348 + -0x7174))" ( (binary_expression "unaff_s6 != *(int ********)(pcStack_348 + -0x7174)" identifier != (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) })) })) (goto_statement "goto LAB_000de180;" goto statement_identifier ;) })) }) (else_clause "else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" else (compound_statement "{\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" { (expression_statement "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);" (assignment_expression "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" identifier = (cast_expression "(int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" identifier (argument_list "(pppppppiStack_304,pppppppiVar25,uStack_338)" ( identifier , identifier , identifier ))))) ;) (expression_statement "__quote = pppppppiVar7;" (assignment_expression "__quote = pppppppiVar7" identifier = identifier) ;) (expression_statement "iStack_32c = (*pcStack_334)(pppppppiStack_324);" (assignment_expression "iStack_32c = (*pcStack_334)(pppppppiStack_324)" identifier = (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" ( (pointer_expression "*pcStack_334" * identifier) )) (argument_list "(pppppppiStack_324)" ( identifier )))) ;) (if_statement "if (-1 < iStack_32c) goto LAB_000de13c;" if (parenthesized_expression "(-1 < iStack_32c)" ( (binary_expression "-1 < iStack_32c" number_literal < identifier) )) (goto_statement "goto LAB_000de13c;" goto statement_identifier ;)) (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" if (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" ( (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" ( (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000de02c;" goto statement_identifier ;) })) (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" ( (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000de658;" goto statement_identifier ;)) }))) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;" if (parenthesized_expression "((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))" ( (binary_expression "(iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" (parenthesized_expression "(iStack_32c != -2)" ( (binary_expression "iStack_32c != -2" identifier != number_literal) )) || (parenthesized_expression "(iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" ( (comma_expression "iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0" (assignment_expression "iVar3 = (*pcStack_334)(pppppppiStack_324)" identifier = (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" ( (pointer_expression "*pcStack_334" * identifier) )) (argument_list "(pppppppiStack_324)" ( identifier )))) , (binary_expression "iVar3 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000de180;" goto statement_identifier ;)) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) (labeled_statement "code_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" statement_identifier : (expression_statement "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,iStack_1b0)" ( identifier , identifier ))) ;)) (if_statement "if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" if (parenthesized_expression "(unaff_s6 != (int *******)0x2f)" ( (binary_expression "unaff_s6 != (int *******)0x2f" identifier != (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" { (expression_statement "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" * (cast_expression "(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar7 + (int)pppppppiVar4)" ( (binary_expression "(int)pppppppiVar7 + (int)pppppppiVar4" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = number_literal) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "((int)pppppppiVar7 + iStack_1a8)" ( (binary_expression "(int)pppppppiVar7 + iStack_1a8" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))) ;) (if_statement "if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" if (parenthesized_expression "(uStack_1a4 != 0)" ( (binary_expression "uStack_1a4 != 0" identifier != number_literal) )) (compound_statement "{\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" { (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_1b4;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_1b4" identifier = (cast_expression "(int *******)*pppppppiStack_1b4" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_1b4" * identifier))) ;) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,pppppppiVar25,unaff_s8)" ( number_literal , identifier , identifier )))) ;) (expression_statement "pppppppiVar6 = pppppppiStack_1b4;" (assignment_expression "pppppppiVar6 = pppppppiStack_1b4" identifier = identifier) ;) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" if (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" ( (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" ( (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" ( (binary_expression "uStack_180 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" { (expression_statement "ppppppiVar21 = *pppppppiStack_1b4;" (assignment_expression "ppppppiVar21 = *pppppppiStack_1b4" identifier = (pointer_expression "*pppppppiStack_1b4" * identifier)) ;) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3)" identifier = (cast_expression "(int *******)((int)ppppppiVar21 + iVar3)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppiVar21 + iVar3)" ( (binary_expression "(int)ppppppiVar21 + iVar3" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "*(undefined1 *)pppppppiVar7 = 0x2f;" (assignment_expression "*(undefined1 *)pppppppiVar7 = 0x2f" (pointer_expression "*(undefined1 *)pppppppiVar7" * (cast_expression "(undefined1 *)pppppppiVar7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0" (pointer_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" * (cast_expression "(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*pppppppiVar6 + iVar3 + 1)" ( (binary_expression "(int)*pppppppiVar6 + iVar3 + 1" (binary_expression "(int)*pppppppiVar6 + iVar3" (cast_expression "(int)*pppppppiVar6" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pppppppiVar6" * identifier)) + identifier) + number_literal) )))) = number_literal) ;) })) })) (expression_statement "unaff_s3 = (int *******)((int)unaff_s3 + 1);" (assignment_expression "unaff_s3 = (int *******)((int)unaff_s3 + 1)" identifier = (cast_expression "(int *******)((int)unaff_s3 + 1)" ( (type_descriptor "int *******" primitive_type (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) )))) ;) (expression_statement "iVar3 = (int)unaff_s3 * 4;" (assignment_expression "iVar3 = (int)unaff_s3 * 4" identifier = (binary_expression "(int)unaff_s3 * 4" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppppiVar6 = (int *******)*unaff_s4;" (assignment_expression "pppppppiVar6 = (int *******)*unaff_s4" identifier = (cast_expression "(int *******)*unaff_s4" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*unaff_s4" * identifier))) ;) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" identifier = (binary_expression "unaff_s2 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s4 = unaff_s4 + 1;" (assignment_expression "unaff_s4 = unaff_s4 + 1" identifier = (binary_expression "unaff_s4 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" identifier = identifier) ;) (if_statement "if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000dda68;" goto statement_identifier ;)) (goto_statement "goto LAB_000dd968;" goto statement_identifier ;) (labeled_statement "LAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" statement_identifier : (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;)) (if_statement "if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;" if (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" ( (binary_expression "pppppppiVar25 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 code_r0x000de4dc;" goto statement_identifier ;)) (if_statement "if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" if (parenthesized_expression "(pppppppiStack_310 != (int *******)0x0)" ( (binary_expression "pppppppiStack_310 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" { (do_statement "do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);" do (compound_statement "{\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    }" { (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_310;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_310" identifier = (cast_expression "(int *******)*pppppppiStack_310" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_310" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" identifier = identifier) ;) }) while (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" ( (binary_expression "pppppppiVar25 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_340)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) (labeled_statement "code_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" statement_identifier : (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar4 = pppppppiVar25;\n  }" { (expression_statement "pppppppiVar4 = pppppppiVar25;" (assignment_expression "pppppppiVar4 = pppppppiVar25" identifier = identifier) ;) }))) (expression_statement "*pppppppiVar25 = (int ******)pppppppiStack_310;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiStack_310" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiStack_310" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar25[1] = *unaff_s6;" (assignment_expression "pppppppiVar25[1] = *unaff_s6" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = (pointer_expression "*unaff_s6" * identifier)) ;) (expression_statement "iStack_318 = iStack_318 + 1;" (assignment_expression "iStack_318 = iStack_318 + 1" identifier = (binary_expression "iStack_318 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" identifier = (binary_expression "unaff_s6 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;" if (parenthesized_expression "(*unaff_s6 == (int ******)0x0)" ( (binary_expression "*unaff_s6 == (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto code_r0x000de510;" goto statement_identifier ;)) (goto_statement "goto LAB_000de4c4;" goto statement_identifier ;) (labeled_statement "LAB_000df004:\n  puVar31 = puVar31 + 1;" statement_identifier : (expression_statement "puVar31 = puVar31 + 1;" (assignment_expression "puVar31 = puVar31 + 1" identifier = (binary_expression "puVar31 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar29 = (char *)*puVar31;" (assignment_expression "pcVar29 = (char *)*puVar31" identifier = (cast_expression "(char *)*puVar31" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar31" * identifier))) ;) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" identifier = (pointer_expression "*(int **)(puVar8 + -0x30)" * (cast_expression "(int **)(puVar8 + -0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" { (labeled_statement "LAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" statement_identifier : (if_statement "if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" if (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) (compound_statement "{\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (do_statement "do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);" do (compound_statement "{\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      }" { (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) ;) }))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" * (cast_expression "(undefined4 *)(puVar8 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (goto_statement "goto LAB_000df010;" goto statement_identifier ;) (labeled_statement "code_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" statement_identifier : (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_340)" ( identifier ))) ;)) (if_statement "if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" if (parenthesized_expression "(iStack_318 != 0)" ( (binary_expression "iStack_318 != 0" identifier != number_literal) )) (compound_statement "{\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" { (if_statement "if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      unaff_s2 = pppppppiVar4;\n    }" { (expression_statement "unaff_s2 = pppppppiVar4;" (assignment_expression "unaff_s2 = pppppppiVar4" identifier = identifier) ;) })) (expression_statement "*pppppppiVar4 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar4 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar4" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + iStack_318)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + iStack_318)" ( (binary_expression "(int)pppppppiVar28 + iStack_318" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) })) (labeled_statement "LAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" statement_identifier : (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;)) (if_statement "if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    unaff_s2 = pppppppiVar25;\n  }" { (expression_statement "unaff_s2 = pppppppiVar25;" (assignment_expression "unaff_s2 = pppppppiVar25" identifier = identifier) ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier )))) ;) (expression_statement "unaff_s6 = (int *******)(iVar3 + 1);" (assignment_expression "unaff_s6 = (int *******)(iVar3 + 1)" identifier = (cast_expression "(int *******)(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" identifier = (cast_expression "(int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))))) ;) (expression_statement "pppppppiVar22 = pppppppiStack_324;" (assignment_expression "pppppppiVar22 = pppppppiStack_324" identifier = identifier) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }" { (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" if (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) })) }) (else_clause "else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" else (compound_statement "{\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" { (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" if (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" { (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar25[1] = ppppppiVar21;" (assignment_expression "pppppppiVar25[1] = ppppppiVar21" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" * (cast_expression "(code **)(pcStack_348 + -0x5f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f88)" ( (binary_expression "pcStack_348 + -0x5f88" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21,pppppppiStack_324,unaff_s6)" ( identifier , identifier , identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar22)" ( identifier ))) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (goto_statement "goto LAB_000de028;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier ))) ;) }))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (labeled_statement "LAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);" statement_identifier : (expression_statement "(**(code **)(pcStack_348 + -0x6284))(iStack_308);" (call_expression "(**(code **)(pcStack_348 + -0x6284))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6284))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6284)" * (pointer_expression "*(code **)(pcStack_348 + -0x6284)" * (cast_expression "(code **)(pcStack_348 + -0x6284)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6284)" ( (binary_expression "pcStack_348 + -0x6284" identifier + number_literal) ))))) )) (argument_list "(iStack_308)" ( identifier ))) ;)) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" if (parenthesized_expression "(uStack_330 == 0x210)" ( (binary_expression "uStack_330 == 0x210" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }" { (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_304)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)(iVar3 + 1);" (assignment_expression "pppppppiVar7 = (int *******)(iVar3 + 1)" identifier = (cast_expression "(int *******)(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);" (assignment_expression "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))))) ;) (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }" { (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) })) }) (else_clause "else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" else (compound_statement "{\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" { (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" { (expression_statement "pppppppiVar25[1] = (int ******)pppppppiVar27;" (assignment_expression "pppppppiVar25[1] = (int ******)pppppppiVar27" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = (cast_expression "(int ******)pppppppiVar27" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" if (parenthesized_expression "(uStack_33c == 0)" ( (binary_expression "uStack_33c == 0" identifier == number_literal) )) (compound_statement "{\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }" { (expression_statement "__quote = pppppppiStack_304;" (assignment_expression "__quote = pppppppiStack_304" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);" (call_expression "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5fac))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5fac)" * (pointer_expression "*(code **)(pcStack_348 + -0x5fac)" * (cast_expression "(code **)(pcStack_348 + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5fac)" ( (binary_expression "pcStack_348 + -0x5fac" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" else (compound_statement "{\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" { (expression_statement "*(undefined1 *)pppppppiVar27 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar27 = 0" (pointer_expression "*(undefined1 *)pppppppiVar27" * (cast_expression "(undefined1 *)pppppppiVar27" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) }))) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier ))) ;) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) }) (else_clause "else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" else (compound_statement "{\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" { (labeled_statement "LAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" statement_identifier : (if_statement "if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" if (parenthesized_expression "(uStack_30c == 0)" ( (binary_expression "uStack_30c == 0" identifier == number_literal) )) (compound_statement "{\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" { (expression_statement "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);" (assignment_expression "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4)" identifier = (cast_expression "(int *******)(((int)pppppppiVar28 + 1) * 4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)pppppppiVar28 + 1) * 4)" ( (binary_expression "((int)pppppppiVar28 + 1) * 4" (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) * number_literal) )))) ;) (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" identifier = (cast_expression "(int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60a4))" ( (pointer_expression "**(code **)(pcVar33 + -0x60a4)" * (pointer_expression "*(code **)(pcVar33 + -0x60a4)" * (cast_expression "(code **)(pcVar33 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x60a4)" ( (binary_expression "pcVar33 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" if (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" ( (binary_expression "pppppppiVar6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" { (if_statement "if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" if (parenthesized_expression "(pppppppiVar28 != (int *******)0x0)" ( (binary_expression "pppppppiVar28 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" { (expression_statement "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);" (assignment_expression "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" identifier = (cast_expression "(int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" ( (binary_expression "(int)(pppppppiVar27 + -1) + (int)pppppppiVar6" (cast_expression "(int)(pppppppiVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pppppppiVar27 + -1)" ( (binary_expression "pppppppiVar27 + -1" identifier + number_literal) ))) + (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppiVar22 = pppppppiVar6;" (assignment_expression "pppppppiVar22 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiVar27 = pppppppiVar25;" (assignment_expression "pppppppiVar27 = pppppppiVar25" identifier = identifier) ;) (do_statement "do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);" do (compound_statement "{\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          }" { (expression_statement "*pppppppiVar22 = pppppppiVar27[1];" (assignment_expression "*pppppppiVar22 = pppppppiVar27[1]" (pointer_expression "*pppppppiVar22" * identifier) = (subscript_expression "pppppppiVar27[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppiVar22 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar22 = pppppppiVar22 + 1" identifier = (binary_expression "pppppppiVar22 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar27;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar27" identifier = (cast_expression "(int *******)*pppppppiVar27" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar27" * identifier))) ;) }) while (parenthesized_expression "(__quote != pppppppiVar22)" ( (binary_expression "__quote != pppppppiVar22" identifier != identifier) )) ;) })) (expression_statement "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1" identifier = (binary_expression "pppppppiVar6 + (int)pppppppiVar28 + 1" (binary_expression "pppppppiVar6 + (int)pppppppiVar28" identifier + (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier)) + number_literal)) ;) (expression_statement "pppppppiVar27[-1] = (int ******)0x0;" (assignment_expression "pppppppiVar27[-1] = (int ******)0x0" (subscript_expression "pppppppiVar27[-1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" if (parenthesized_expression "(unaff_s2 != (int *******)0x0)" ( (binary_expression "unaff_s2 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" { (while_statement "while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" while (parenthesized_expression "(pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0)" ( (comma_expression "pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) , (binary_expression "pppppppiVar22 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" { (expression_statement "pppppppiVar25 = pppppppiVar22;" (assignment_expression "pppppppiVar25 = pppppppiVar22" identifier = identifier) ;) (if_statement "if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" if (parenthesized_expression "(pppppppiVar22 == unaff_s2)" ( (binary_expression "pppppppiVar22 == unaff_s2" identifier == identifier) )) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (break_statement "break;" break ;) })) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar22;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar22" identifier = (cast_expression "(int *******)*pppppppiVar22" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar22" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar22)" ( identifier ))) ;) (expression_statement "pppppppiVar22 = pppppppiVar27;" (assignment_expression "pppppppiVar22 = pppppppiVar27" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) })) }))) }))) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar6 = (int *******)0x0;\n  }" { (expression_statement "pppppppiVar6 = (int *******)0x0;" (assignment_expression "pppppppiVar6 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" else (compound_statement "{\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" { (do_statement "do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);" do (compound_statement "{\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    }" { (if_statement "if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }" { (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" ( (pointer_expression "**(code **)(pcVar33 + -0x5f94)" * (pointer_expression "*(code **)(pcVar33 + -0x5f94)" * (cast_expression "(code **)(pcVar33 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5f94)" ( (binary_expression "pcVar33 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6[1])" ( (subscript_expression "pppppppiVar6[1]" identifier [ number_literal ]) ))) ;) (expression_statement "pppppppiVar6 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiVar6" identifier = (cast_expression "(int *******)*pppppppiVar6" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar6" * identifier))) ;) }) (else_clause "else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" else (compound_statement "{\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" { (if_statement "if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }" if (parenthesized_expression "(pppppppiVar6 == unaff_s2)" ( (binary_expression "pppppppiVar6 == unaff_s2" identifier == identifier) )) (compound_statement "{\n          unaff_s2 = (int *******)0x0;\n        }" { (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" ( (pointer_expression "**(code **)(pcVar33 + -0x5f94)" * (pointer_expression "*(code **)(pcVar33 + -0x5f94)" * (cast_expression "(code **)(pcVar33 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5f94)" ( (binary_expression "pcVar33 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6[1])" ( (subscript_expression "pppppppiVar6[1]" identifier [ number_literal ]) ))) ;) (expression_statement "pppppppiVar25 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiVar6" identifier = (cast_expression "(int *******)*pppppppiVar6" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar6" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) }))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) while (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" ( (binary_expression "pppppppiVar6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" statement_identifier : (if_statement "if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" if (parenthesized_expression "(pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4))" ( (binary_expression "pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)" identifier == (cast_expression "(char *)**(undefined4 **)(pcVar33 + -0x5fb4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar33 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(pcVar33 + -0x5fb4)" * (cast_expression "(undefined4 **)(pcVar33 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5fb4)" ( (binary_expression "pcVar33 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiVar6;\n  }" { (return_statement "return pppppppiVar6;" return identifier ;) }))) (expression_statement "pcVar33 = *(code **)(pcVar33 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcVar33 + -0x6004)" identifier = (pointer_expression "*(code **)(pcVar33 + -0x6004)" * (cast_expression "(code **)(pcVar33 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x6004)" ( (binary_expression "pcVar33 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_filename;" (assignment_expression "pcVar35 = glob_filename" identifier = identifier) ;) (expression_statement "pcVar29 = pcStack_25c;" (assignment_expression "pcVar29 = pcStack_25c" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "*(code **)(puVar8 + -4) = pcVar35;" (assignment_expression "*(code **)(puVar8 + -4) = pcVar35" (pointer_expression "*(code **)(puVar8 + -4)" * (cast_expression "(code **)(puVar8 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -4)" ( (binary_expression "puVar8 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar8 + -8) = auStack_358;" (assignment_expression "*(undefined1 **)(puVar8 + -8) = auStack_358" (pointer_expression "*(undefined1 **)(puVar8 + -8)" * (cast_expression "(undefined1 **)(puVar8 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -8)" ( (binary_expression "puVar8 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0xc) = pppppppiVar4;" (assignment_expression "*(int ********)(puVar8 + -0xc) = pppppppiVar4" (pointer_expression "*(int ********)(puVar8 + -0xc)" * (cast_expression "(int ********)(puVar8 + -0xc)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0xc)" ( (binary_expression "puVar8 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x10) = unaff_s6;" (assignment_expression "*(int ********)(puVar8 + -0x10) = unaff_s6" (pointer_expression "*(int ********)(puVar8 + -0x10)" * (cast_expression "(int ********)(puVar8 + -0x10)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x10)" ( (binary_expression "puVar8 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x14) = pppppppiVar28;" (assignment_expression "*(int ********)(puVar8 + -0x14) = pppppppiVar28" (pointer_expression "*(int ********)(puVar8 + -0x14)" * (cast_expression "(int ********)(puVar8 + -0x14)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x14)" ( (binary_expression "puVar8 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x18) = pppppppiVar7;" (assignment_expression "*(int ********)(puVar8 + -0x18) = pppppppiVar7" (pointer_expression "*(int ********)(puVar8 + -0x18)" * (cast_expression "(int ********)(puVar8 + -0x18)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x18)" ( (binary_expression "puVar8 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x1c) = pppppppiVar27;" (assignment_expression "*(int ********)(puVar8 + -0x1c) = pppppppiVar27" (pointer_expression "*(int ********)(puVar8 + -0x1c)" * (cast_expression "(int ********)(puVar8 + -0x1c)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x1c)" ( (binary_expression "puVar8 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x20) = unaff_s2;" (assignment_expression "*(int ********)(puVar8 + -0x20) = unaff_s2" (pointer_expression "*(int ********)(puVar8 + -0x20)" * (cast_expression "(int ********)(puVar8 + -0x20)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x20)" ( (binary_expression "puVar8 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x24) = pppppppiVar6;" (assignment_expression "*(int ********)(puVar8 + -0x24) = pppppppiVar6" (pointer_expression "*(int ********)(puVar8 + -0x24)" * (cast_expression "(int ********)(puVar8 + -0x24)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x24)" ( (binary_expression "puVar8 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x28) = pppppppiVar25;" (assignment_expression "*(int ********)(puVar8 + -0x28) = pppppppiVar25" (pointer_expression "*(int ********)(puVar8 + -0x28)" * (cast_expression "(int ********)(puVar8 + -0x28)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x28)" ( (binary_expression "puVar8 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;" (assignment_expression "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c" (pointer_expression "*(code **)(puVar8 + -0x50)" * (cast_expression "(code **)(puVar8 + -0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) = (binary_expression "pcVar33 + 0x7fb4c" identifier + number_literal)) ;) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" identifier = (cast_expression "(int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar33 + 0x79aa8))(4)" (parenthesized_expression "(**(code **)(pcVar33 + 0x79aa8))" ( (pointer_expression "**(code **)(pcVar33 + 0x79aa8)" * (pointer_expression "*(code **)(pcVar33 + 0x79aa8)" * (cast_expression "(code **)(pcVar33 + 0x79aa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x79aa8)" ( (binary_expression "pcVar33 + 0x79aa8" identifier + number_literal) ))))) )) (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "iVar3 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    return (int *******)0x0;\n  }" { (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "*pppppppiVar7 = (int ******)0x0;" (assignment_expression "*pppppppiVar7 = (int ******)0x0" (pointer_expression "*pppppppiVar7" * identifier) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);" (assignment_expression "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" identifier = (call_expression "(**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" (parenthesized_expression "(**(code **)(iVar3 + -0x61d4))" ( (pointer_expression "**(code **)(iVar3 + -0x61d4)" * (pointer_expression "*(code **)(iVar3 + -0x61d4)" * (cast_expression "(code **)(iVar3 + -0x61d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + -0x61d4)" ( (binary_expression "iVar3 + -0x61d4" identifier + number_literal) ))))) )) (argument_list "(pcVar29,0x2f)" ( identifier , number_literal )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }" { (labeled_statement "LAB_000deb88:\n    iVar3 = 0;" statement_identifier : (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;)) (expression_statement "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (labeled_statement "LAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" statement_identifier : (if_statement "if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" if (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" identifier = (cast_expression "(int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" ( (type_descriptor "int *******" primitive_type (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 + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" ( (pointer_expression "**(code **)(iVar23 + -0x6098)" * (pointer_expression "*(code **)(iVar23 + -0x6098)" * (cast_expression "(code **)(iVar23 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x6098)" ( (binary_expression "iVar23 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,8)" ( identifier , number_literal ))))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" { (if_statement "if (iVar3 == 0) {\n          return (int *******)0x0;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          return (int *******)0x0;\n        }" { (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" statement_identifier : (expression_statement "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar17 + -0x5f94))" ( (pointer_expression "**(code **)(iVar17 + -0x5f94)" * (pointer_expression "*(code **)(iVar17 + -0x5f94)" * (cast_expression "(code **)(iVar17 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + -0x5f94)" ( (binary_expression "iVar17 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;)) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000df634:\n      iVar24 = uVar5 + 1;" statement_identifier : (expression_statement "iVar24 = uVar5 + 1;" (assignment_expression "iVar24 = uVar5 + 1" identifier = (binary_expression "uVar5 + 1" identifier + number_literal)) ;)) (labeled_statement "LAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" statement_identifier : (expression_statement "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" (assignment_expression "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" identifier = (cast_expression "(int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(iVar17 + -0x60a4))(iVar24)" (parenthesized_expression "(**(code **)(iVar17 + -0x60a4))" ( (pointer_expression "**(code **)(iVar17 + -0x60a4)" * (pointer_expression "*(code **)(iVar17 + -0x60a4)" * (cast_expression "(code **)(iVar17 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + -0x60a4)" ( (binary_expression "iVar17 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar24)" ( identifier ))))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*pppppppiVar7 = ppppppiVar16;" (assignment_expression "*pppppppiVar7 = ppppppiVar16" (pointer_expression "*pppppppiVar7" * identifier) = identifier) ;) (if_statement "if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" if (parenthesized_expression "(ppppppiVar16 != (int ******)0x0)" ( (binary_expression "ppppppiVar16 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);" (call_expression "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24)" (parenthesized_expression "(**(code **)(iVar23 + -0x5fac))" ( (pointer_expression "**(code **)(iVar23 + -0x5fac)" * (pointer_expression "*(code **)(iVar23 + -0x5fac)" * (cast_expression "(code **)(iVar23 + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5fac)" ( (binary_expression "iVar23 + -0x5fac" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar16,ppppppiVar21,iVar24)" ( identifier , identifier , identifier ))) ;) (if_statement "if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" { (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (labeled_statement "LAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" statement_identifier : (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" if (parenthesized_expression "((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0))" ( (binary_expression "(iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) || (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) }))) (labeled_statement "LAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" statement_identifier : (if_statement "if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" ( (pointer_expression "**(code **)(iVar23 + -0x7ce8)" * (pointer_expression "*(code **)(iVar23 + -0x7ce8)" * (cast_expression "(code **)(iVar23 + -0x7ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7ce8)" ( (binary_expression "iVar23 + -0x7ce8" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" ( (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" * (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" * (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) })))) (if_statement "if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" identifier = (pointer_expression "*(code **)(iVar23 + -0x7d20)" * (cast_expression "(code **)(iVar23 + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7d20)" ( (binary_expression "iVar23 + -0x7d20" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" ( (pointer_expression "**(code **)(iVar23 + -0x7cf4)" * (pointer_expression "*(code **)(iVar23 + -0x7cf4)" * (cast_expression "(code **)(iVar23 + -0x7cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf4)" ( (binary_expression "iVar23 + -0x7cf4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" identifier = (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) ;) }))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(iVar23 + -0x5f94))();" (call_expression "(**(code **)(iVar23 + -0x5f94))()" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe | 0x100;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe | 0x100" identifier = (binary_expression "(uint)__quote & 0xfffffffe | 0x100" (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) | number_literal)) ;) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" if (parenthesized_expression "(((uint)__quote & 0x400) == 0)" ( (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" else (if_statement "if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" if (parenthesized_expression "(*pcVar29 == '*')" ( (binary_expression "*pcVar29 == '*'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }" { (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;" statement_identifier : (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;)) (if_statement "if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" if (parenthesized_expression "((pcVar29[1] == '*') && (pcVar29[2] == '\0'))" ( (binary_expression "(pcVar29[1] == '*') && (pcVar29[2] == '\0')" (parenthesized_expression "(pcVar29[1] == '*')" ( (binary_expression "pcVar29[1] == '*'" (subscript_expression "pcVar29[1]" identifier [ number_literal ]) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(pcVar29[2] == '\0')" ( (binary_expression "pcVar29[2] == '\0'" (subscript_expression "pcVar29[2]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" { (expression_statement "uVar14 = uVar30 | 0x210;" (assignment_expression "uVar14 = uVar30 | 0x210" identifier = (binary_expression "uVar30 | 0x210" identifier | number_literal)) ;) (if_statement "if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" { (if_statement "if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" if (parenthesized_expression "(((uint)__quote & 0x10) == 0)" ( (binary_expression "((uint)__quote & 0x10) == 0" (parenthesized_expression "((uint)__quote & 0x10)" ( (binary_expression "(uint)__quote & 0x10" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" { (expression_statement "uVar14 = uVar30 & 0xfffffdff | 0x10;" (assignment_expression "uVar14 = uVar30 & 0xfffffdff | 0x10" identifier = (binary_expression "uVar30 & 0xfffffdff | 0x10" (binary_expression "uVar30 & 0xfffffdff" identifier & number_literal) | number_literal)) ;) })) (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) }) (else_clause "else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" else (compound_statement "{\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" { (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) }))) }) (else_clause "else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" else (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) }))))) (labeled_statement "LAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" statement_identifier : (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" identifier = (cast_expression "(int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pcVar29,ppppppiVar16,uVar14)" identifier (argument_list "(pcVar29,ppppppiVar16,uVar14)" ( identifier , identifier , identifier ))))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" { (labeled_statement "LAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" statement_identifier : (if_statement "if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" if (parenthesized_expression "(pppppppiVar7 != *(int ********)(iVar23 + -0x7174))" ( (binary_expression "pppppppiVar7 != *(int ********)(iVar23 + -0x7174)" identifier != (pointer_expression "*(int ********)(iVar23 + -0x7174)" * (cast_expression "(int ********)(iVar23 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" { (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (if_statement "if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" if (parenthesized_expression "((uVar14 & 0x10) != 0)" ( (binary_expression "(uVar14 & 0x10) != 0" (parenthesized_expression "(uVar14 & 0x10)" ( (binary_expression "uVar14 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);" (assignment_expression "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" identifier = (cast_expression "(int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" identifier (argument_list "(ppppppiVar16,pppppppiVar7,__quote)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (iVar3 == 0) {\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          return pppppppiVar7;\n        }" { (return_statement "return pppppppiVar7;" return identifier ;) })) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) }))) })) (if_statement "if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000df4b0;" goto statement_identifier ;) })) }) (else_clause "else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" else (compound_statement "{\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" { (if_statement "if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" if (parenthesized_expression "(**(int **)(iVar23 + -0x7bf8) != 0)" ( (binary_expression "**(int **)(iVar23 + -0x7bf8) != 0" (pointer_expression "**(int **)(iVar23 + -0x7bf8)" * (pointer_expression "*(int **)(iVar23 + -0x7bf8)" * (cast_expression "(int **)(iVar23 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7bf8)" ( (binary_expression "iVar23 + -0x7bf8" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" { (expression_statement "iVar3 = glob_dirscan(pcVar29,0x2f);" (assignment_expression "iVar3 = glob_dirscan(pcVar29,0x2f)" identifier = (call_expression "glob_dirscan(pcVar29,0x2f)" identifier (argument_list "(pcVar29,0x2f)" ( identifier , number_literal )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) goto LAB_000deb88;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000deb88;" goto statement_identifier ;)) })) (expression_statement "iVar24 = iVar3 - (int)pcVar29;" (assignment_expression "iVar24 = iVar3 - (int)pcVar29" identifier = (binary_expression "iVar3 - (int)pcVar29" identifier - (cast_expression "(int)pcVar29" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar5 = iVar24 + 1;" (assignment_expression "uVar5 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" identifier = (cast_expression "(int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" (parenthesized_expression "(**(code **)(iVar23 + -0x60a4))" ( (pointer_expression "**(code **)(iVar23 + -0x60a4)" * (pointer_expression "*(code **)(iVar23 + -0x60a4)" * (cast_expression "(code **)(iVar23 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x60a4)" ( (binary_expression "iVar23 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar24 + 2)" ( (binary_expression "iVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (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 *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" { (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5fac)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5fac" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21,pcVar29,uVar5)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(char *)((int)ppppppiVar21 + uVar5) = '\0';" (assignment_expression "*(char *)((int)ppppppiVar21 + uVar5) = '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + uVar5)" * (cast_expression "(char *)((int)ppppppiVar21 + uVar5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + uVar5)" ( (binary_expression "(int)ppppppiVar21 + uVar5" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar26 = (char *)(iVar3 + 1);" (assignment_expression "pcVar26 = (char *)(iVar3 + 1)" identifier = (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (if_statement "if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000deb94;" goto statement_identifier ;) })) (expression_statement "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);" (assignment_expression "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" identifier = (call_expression "glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" identifier (argument_list "((char *)ppppppiVar21,(int)pcVar29)" ( (cast_expression "(char *)ppppppiVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)pcVar29" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (if_statement "if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" if (parenthesized_expression "(iVar23 == 1)" ( (binary_expression "iVar23 == 1" identifier == number_literal) )) (compound_statement "{\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" { (expression_statement "uVar14 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar14 = (uint)__quote & 0xfffffffe" identifier = (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;" (assignment_expression "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400" (pointer_expression "*(uint *)(puVar8 + -0x44)" * (cast_expression "(uint *)(puVar8 + -0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) )))) = (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" if (parenthesized_expression "(((uint)__quote & 0x400) == 0)" ( (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44)" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar8 + -0x44)" * (cast_expression "(undefined4 *)(puVar8 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" else (compound_statement "{\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" { (if_statement "if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" if (parenthesized_expression "(*(char *)ppppppiVar21 == '*')" ( (binary_expression "*(char *)ppppppiVar21 == '*'" (pointer_expression "*(char *)ppppppiVar21" * (cast_expression "(char *)ppppppiVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }" { (if_statement "if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" if (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 1) == '*')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 1) == '*'" (pointer_expression "*(char *)((int)ppppppiVar21 + 1)" * (cast_expression "(char *)((int)ppppppiVar21 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 1)" ( (binary_expression "(int)ppppppiVar21 + 1" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }" { (expression_statement "ppppppiVar10 = ppppppiVar21;" (assignment_expression "ppppppiVar10 = ppppppiVar21" identifier = identifier) ;) (if_statement "if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" if (parenthesized_expression "((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0'))" ( (binary_expression "(*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')" (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '/')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" * (cast_expression "(char *)((int)ppppppiVar21 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 2)" ( (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'/'" ' character ')) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '\0')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" * (cast_expression "(char *)((int)ppppppiVar21 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 2)" ( (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }" { (do_statement "do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');" do (compound_statement "{\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              }" { (expression_statement "ppppppiVar19 = ppppppiVar10;" (assignment_expression "ppppppiVar19 = ppppppiVar10" identifier = identifier) ;) (expression_statement "ppppppiVar10 = ppppppiVar19;" (assignment_expression "ppppppiVar10 = ppppppiVar19" identifier = identifier) ;) (if_statement "if (*(char *)((int)ppppppiVar19 + 1) != '*') break;" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 1) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 1) != '*'" (pointer_expression "*(char *)((int)ppppppiVar19 + 1)" * (cast_expression "(char *)((int)ppppppiVar19 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 1)" ( (binary_expression "(int)ppppppiVar19 + 1" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'*'" ' character ')) )) (break_statement "break;" break ;)) (if_statement "if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) == '/')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" * (cast_expression "(char *)((int)ppppppiVar19 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 2)" ( (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }" { (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3)" identifier = (cast_expression "(int ******)((int)ppppppiVar19 + 3)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppiVar19 + 3)" ( (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "cVar2 = *(char *)((int)ppppppiVar19 + 3);" (assignment_expression "cVar2 = *(char *)((int)ppppppiVar19 + 3)" identifier = (pointer_expression "*(char *)((int)ppppppiVar19 + 3)" * (cast_expression "(char *)((int)ppppppiVar19 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 3)" ( (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (while_statement "while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" while (parenthesized_expression "(cVar2 == '/')" ( (binary_expression "cVar2 == '/'" identifier == (char_literal "'/'" ' character ')) )) (compound_statement "{\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" { (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1)" identifier = (cast_expression "(int ******)((int)ppppppiVar10 + 1)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppiVar10 + 1)" ( (binary_expression "(int)ppppppiVar10 + 1" (cast_expression "(int)ppppppiVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" identifier = (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) })) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" identifier = identifier) ;) (if_statement "if (cVar2 == '\0') break;" if (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) }) (else_clause "else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" else (if_statement "if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) != '\0')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 2) != '\0'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" * (cast_expression "(char *)((int)ppppppiVar19 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 2)" ( (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" { (expression_statement "cVar2 = *(char *)ppppppiVar19;" (assignment_expression "cVar2 = *(char *)ppppppiVar19" identifier = (pointer_expression "*(char *)ppppppiVar19" * (cast_expression "(char *)ppppppiVar19" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (goto_statement "goto LAB_000dedb8;" goto statement_identifier ;) })))) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" identifier = identifier) ;) }) while (parenthesized_expression "(*(char *)ppppppiVar10 == '*')" ( (binary_expression "*(char *)ppppppiVar10 == '*'" (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'*'" ' character ')) )) ;) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" identifier = (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (labeled_statement "LAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;" statement_identifier : (expression_statement "*(int *)(puVar8 + -0x40) = (int)cVar2;" (assignment_expression "*(int *)(puVar8 + -0x40) = (int)cVar2" (pointer_expression "*(int *)(puVar8 + -0x40)" * (cast_expression "(int *)(puVar8 + -0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) = (cast_expression "(int)cVar2" ( (type_descriptor "int" primitive_type) ) identifier)) ;)) (expression_statement "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);" (assignment_expression "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0)" (pointer_expression "*(uint *)(puVar8 + -0x48)" * (cast_expression "(uint *)(puVar8 + -0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = (call_expression "(uint)(cVar2 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(cVar2 == 0)" ( (binary_expression "cVar2 == 0" identifier == number_literal) )))) ;) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" identifier = (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar16)" ( identifier )))) ;) (expression_statement "uVar14 = uVar14 | 0x210;" (assignment_expression "uVar14 = uVar14 | 0x210" identifier = (binary_expression "uVar14 | 0x210" identifier | number_literal)) ;) (if_statement "if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;" if (parenthesized_expression "(*(int *)(puVar8 + -0x40) == 0)" ( (binary_expression "*(int *)(puVar8 + -0x40) == 0" (pointer_expression "*(int *)(puVar8 + -0x40)" * (cast_expression "(int *)(puVar8 + -0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000dee6c;" goto statement_identifier ;)) }) (else_clause "else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" else (compound_statement "{\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" else (compound_statement "{\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "uVar20 = uVar5;" (assignment_expression "uVar20 = uVar5" identifier = identifier) ;) (expression_statement "uVar30 = uVar5;" (assignment_expression "uVar30 = uVar5" identifier = identifier) ;) (if_statement "if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" if (parenthesized_expression "(3 < (int)uVar5)" ( (binary_expression "3 < (int)uVar5" number_literal < (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" { (if_statement "if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;" if (parenthesized_expression "(((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'))" ( (binary_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" (parenthesized_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'))" ( (binary_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 1)" ( (binary_expression "uVar5 - 1" identifier - number_literal) ))) )))) != (char_literal "'/'" ' character ')) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 2))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 2))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 2)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 2)" ( (binary_expression "uVar5 - 2" identifier - number_literal) ))) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 3))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 3))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 3)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 3)" ( (binary_expression "uVar5 - 3" identifier - number_literal) ))) )))) != (char_literal "'*'" ' character ')) ))) )) (goto_statement "goto LAB_000dee6c;" goto statement_identifier ;)) (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6))" identifier = (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 6))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 6)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 6)" ( (binary_expression "uVar5 - 6" identifier - number_literal) ))) )))) ;) (while_statement "while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" while (parenthesized_expression "((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)))" ( (parenthesized_expression "(uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))" ( (comma_expression "uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar18 = uVar30" identifier = identifier) , (comma_expression "uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar30 = uVar18" identifier = identifier) , (binary_expression "pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (binary_expression "pcVar29[2] == '/'" (subscript_expression "pcVar29[2]" identifier [ number_literal ]) == (char_literal "'/'" ' character ')) && (parenthesized_expression "(uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" ( (comma_expression "uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar30 = uVar18 - 3" identifier = (binary_expression "uVar18 - 3" identifier - number_literal)) , (comma_expression "uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar20 = uVar18" identifier = identifier) , (binary_expression "3 < (int)uVar30" number_literal < (cast_expression "(int)uVar30" ( (type_descriptor "int" primitive_type) ) identifier)))) ))))) )) )) (compound_statement "{\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" { (if_statement "if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;" if (parenthesized_expression "((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))" ( (binary_expression "(pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" (parenthesized_expression "(pcVar29[1] != '*')" ( (binary_expression "pcVar29[1] != '*'" (subscript_expression "pcVar29[1]" identifier [ number_literal ]) != (char_literal "'*'" ' character ')) )) || (parenthesized_expression "(cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" ( (comma_expression "cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "cVar2 = *pcVar29" identifier = (pointer_expression "*pcVar29" * identifier)) , (comma_expression "pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "pcVar29 = pcVar29 + -3" identifier = (binary_expression "pcVar29 + -3" identifier + number_literal)) , (binary_expression "cVar2 != '*'" identifier != (char_literal "'*'" ' character ')))) ))) )) (break_statement "break;" break ;)) })) })) (expression_statement "bVar1 = uVar30 != uVar5;" (assignment_expression "bVar1 = uVar30 != uVar5" identifier = (binary_expression "uVar30 != uVar5" identifier != identifier)) ;) (expression_statement "uVar5 = uVar20;" (assignment_expression "uVar5 = uVar20" identifier = identifier) ;) (if_statement "if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }" if (parenthesized_expression "((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))))" ( (binary_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" (parenthesized_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*'))" ( (binary_expression "((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')" (parenthesized_expression "((bVar1) && (4 < uVar20))" ( (binary_expression "(bVar1) && (4 < uVar20)" (parenthesized_expression "(bVar1)" ( identifier )) && (parenthesized_expression "(4 < uVar20)" ( (binary_expression "4 < uVar20" number_literal < identifier) ))) )) && (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" ( (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) ))) )) && (parenthesized_expression "((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" ( (parenthesized_expression "(*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')" (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n          uVar5 = uVar20 - 3;\n        }" { (expression_statement "uVar5 = uVar20 - 3;" (assignment_expression "uVar5 = uVar20 - 3" identifier = (binary_expression "uVar20 - 3" identifier - number_literal)) ;) })) }))) (labeled_statement "LAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" statement_identifier : (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1))" identifier = (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 1)" ( (binary_expression "uVar5 - 1" identifier - number_literal) ))) )))) ;)) (if_statement "if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }" if (parenthesized_expression "(*pcVar29 == '/')" ( (binary_expression "*pcVar29 == '/'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n        *pcVar29 = '\0';\n      }" { (expression_statement "*pcVar29 = '\0';" (assignment_expression "*pcVar29 = '\0'" (pointer_expression "*pcVar29" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) })) (expression_statement "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);" (assignment_expression "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800)" identifier = (call_expression "glob_filename(ppppppiVar16,uVar14 | 0x800)" identifier (argument_list "(ppppppiVar16,uVar14 | 0x800)" ( identifier , (binary_expression "uVar14 | 0x800" identifier | number_literal) )))) ;) (expression_statement "*(int *)(puVar8 + -0x30) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x30) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x30)" * (cast_expression "(int *)(puVar8 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" { (labeled_statement "LAB_000df274:\n        iVar3 = 1;" statement_identifier : (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;)) (expression_statement "ppppppiVar21 = *pppppppiVar7;" (assignment_expression "ppppppiVar21 = *pppppppiVar7" identifier = (pointer_expression "*pppppppiVar7" * identifier)) ;) (expression_statement "pppppppiVar4 = pppppppiVar7;" (assignment_expression "pppppppiVar4 = pppppppiVar7" identifier = identifier) ;) (while_statement "while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" { (expression_statement "pppppppiVar4 = pppppppiVar4 + 1;" (assignment_expression "pppppppiVar4 = pppppppiVar4 + 1" identifier = (binary_expression "pppppppiVar4 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "ppppppiVar21 = *pppppppiVar4;" (assignment_expression "ppppppiVar21 = *pppppppiVar4" identifier = (pointer_expression "*pppppppiVar4" * identifier)) ;) })) (goto_statement "goto LAB_000df2ac;" goto statement_identifier ;) })) (if_statement "if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" if (parenthesized_expression "(iVar24 == *(int *)(iVar23 + -0x7174))" ( (binary_expression "iVar24 == *(int *)(iVar23 + -0x7174)" identifier == (pointer_expression "*(int *)(iVar23 + -0x7174)" * (cast_expression "(int *)(iVar23 + -0x7174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return *(int ********)(puVar8 + -0x30);" return (pointer_expression "*(int ********)(puVar8 + -0x30)" * (cast_expression "(int ********)(puVar8 + -0x30)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ;) })) (expression_statement "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);" (assignment_expression "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar8 + -0x30)" * (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 **)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);" return (pointer_expression "*(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" * (cast_expression "(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(*(int *)(puVar8 + -0x50) + -0x7174)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7174" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" if (parenthesized_expression "(*(int *)(puVar8 + -0x48) != 0)" ( (binary_expression "*(int *)(puVar8 + -0x48) != 0" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" { (if_statement "if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" if (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) )) (compound_statement "{\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" { (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" identifier = (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000def94;" goto statement_identifier ;) })) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" if (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" * (cast_expression "(undefined4 *)(puVar8 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *(int *)(puVar8 + -0x48);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x48)" identifier = (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) ))))) ;) (expression_statement "ppppppiVar21 = (int ******)0x0;" (assignment_expression "ppppppiVar21 = (int ******)0x0" identifier = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000deb94;" goto statement_identifier ;) })) })) (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" identifier = (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000def94:\n      iVar17 = 1;" statement_identifier : (expression_statement "iVar17 = 1;" (assignment_expression "iVar17 = 1" identifier = number_literal) ;)) (expression_statement "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;" (assignment_expression "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18" (pointer_expression "*(int *)(puVar8 + -0x2c)" * (cast_expression "(int *)(puVar8 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x2c)" ( (binary_expression "puVar8 + -0x2c" identifier + number_literal) )))) = (binary_expression "iVar24 + -0x5e18" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);" (assignment_expression "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960)" (pointer_expression "*(undefined4 *)(puVar8 + -0x40)" * (cast_expression "(undefined4 *)(puVar8 + -0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(iVar23 + -0x6960)" * (cast_expression "(undefined4 *)(iVar23 + -0x6960)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x6960)" ( (binary_expression "iVar23 + -0x6960" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;" (assignment_expression "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(puVar8 + -0x34)" * (cast_expression "(int *)(puVar8 + -0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x34)" ( (binary_expression "puVar8 + -0x34" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(iVar23 + -0x6990)" * (cast_expression "(int *)(iVar23 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x6990)" ( (binary_expression "iVar23 + -0x6990" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;" statement_identifier : (expression_statement "uVar5 = (uint)__quote & 0xfffffdee;" (assignment_expression "uVar5 = (uint)__quote & 0xfffffdee" identifier = (binary_expression "(uint)__quote & 0xfffffdee" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;)) (if_statement "if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" if (parenthesized_expression "((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*'))" ( (binary_expression "(*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "(*(int *)(puVar8 + -0x44) == 0)" ( (binary_expression "*(int *)(puVar8 + -0x44) == 0" (pointer_expression "*(int *)(puVar8 + -0x44)" * (cast_expression "(int *)(puVar8 + -0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) )))) == number_literal) )) || (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) (compound_statement "{\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }" { (if_statement "if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;" if (parenthesized_expression "((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0'))" ( (binary_expression "(*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')" (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 1) != '\0')" ( (binary_expression "*(char *)(iVar3 + 1) != '\0'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000defd0;" goto statement_identifier ;)) }) (else_clause "else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" else (compound_statement "{\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" { (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }" if (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          uVar5 = uVar5 | 0x210;\n        }" { (expression_statement "uVar5 = uVar5 | 0x210;" (assignment_expression "uVar5 = uVar5 | 0x210" identifier = (binary_expression "uVar5 | 0x210" identifier | number_literal)) ;) })) (if_statement "if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" if (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" { (labeled_statement "LAB_000defd0:\n          uVar5 = uVar5 | 0x100;" statement_identifier : (expression_statement "uVar5 = uVar5 | 0x100;" (assignment_expression "uVar5 = uVar5 | 0x100" identifier = (binary_expression "uVar5 | 0x100" identifier | number_literal)) ;)) (expression_statement "pcVar29 = *(char **)(puVar8 + -0x2c);" (assignment_expression "pcVar29 = *(char **)(puVar8 + -0x2c)" identifier = (pointer_expression "*(char **)(puVar8 + -0x2c)" * (cast_expression "(char **)(puVar8 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x2c)" ( (binary_expression "puVar8 + -0x2c" identifier + number_literal) ))))) ;) })) }))) (expression_statement "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);" (assignment_expression "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(puVar8 + -0x40))" ( (pointer_expression "**(code **)(puVar8 + -0x40)" * (pointer_expression "*(code **)(puVar8 + -0x40)" * (cast_expression "(code **)(puVar8 + -0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) ))))) )) (argument_list "(pcVar26,pcVar29,uVar5)" ( identifier , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000df26c;" if (parenthesized_expression "(piVar15 == (int *)0x0)" ( (binary_expression "piVar15 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000df26c;" goto statement_identifier ;)) (if_statement "if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;" if (parenthesized_expression "(piVar15 == *(int **)(iVar23 + -0x7174))" ( (binary_expression "piVar15 == *(int **)(iVar23 + -0x7174)" identifier == (pointer_expression "*(int **)(iVar23 + -0x7174)" * (cast_expression "(int **)(iVar23 + -0x7174)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000df004;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10;" (assignment_expression "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10" (pointer_expression "*(uint *)(puVar8 + -0x38)" * (cast_expression "(uint *)(puVar8 + -0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x38)" ( (binary_expression "puVar8 + -0x38" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x10" identifier & number_literal)) ;) (if_statement "if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" if (parenthesized_expression "(((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))))" ( (binary_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" (parenthesized_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          )" ( (binary_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')" (parenthesized_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*'))" ( (binary_expression "((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "((uVar5 & 0x10) == 0)" ( (binary_expression "(uVar5 & 0x10) == 0" (parenthesized_expression "(uVar5 & 0x10)" ( (binary_expression "uVar5 & 0x10" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "(*(char *)(iVar3 + 2) != '*')" ( (binary_expression "*(char *)(iVar3 + 2) != '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" ( (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))" ( (binary_expression "*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')" (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(*(char *)(iVar3 + 3) != '/')" ( (binary_expression "*(char *)(iVar3 + 3) != '/'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'/'" ' character ')) ))) )) ))) )) (compound_statement "{\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }" { (expression_statement "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" (parenthesized_expression "(**(code **)(puVar8 + -0x34))" ( (pointer_expression "**(code **)(puVar8 + -0x34)" * (pointer_expression "*(code **)(puVar8 + -0x34)" * (cast_expression "(code **)(puVar8 + -0x34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x34)" ( (binary_expression "puVar8 + -0x34" identifier + number_literal) ))))) )) (argument_list "(*puVar31,piVar15,__quote)" ( (pointer_expression "*puVar31" * identifier) , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000df0a0:\n        iVar24 = 0;" statement_identifier : (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;)) (if_statement "if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" if (parenthesized_expression "(*piVar11 != 0)" ( (binary_expression "*piVar11 != 0" (pointer_expression "*piVar11" * identifier) != number_literal) )) (compound_statement "{\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" { (labeled_statement "LAB_000df0ac:\n          iVar24 = 0;" statement_identifier : (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;)) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" identifier = identifier) ;) (do_statement "do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);" do (compound_statement "{\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          }" { (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*piVar13 != 0)" ( (binary_expression "*piVar13 != 0" (pointer_expression "*piVar13" * identifier) != number_literal) )) ;) })) }) (else_clause "else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" else (compound_statement "{\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" { (expression_statement "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" * (cast_expression "(uint *)(puVar8 + -0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x100" identifier & number_literal)) ;) (expression_statement "piVar11 = piVar15;" (assignment_expression "piVar11 = piVar15" identifier = identifier) ;) (if_statement "if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;" if (parenthesized_expression "((uVar5 & 0x100) == 0)" ( (binary_expression "(uVar5 & 0x100) == 0" (parenthesized_expression "(uVar5 & 0x100)" ( (binary_expression "uVar5 & 0x100" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" * (cast_expression "(uint *)(puVar8 + -0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" if (parenthesized_expression "(((uint)__quote & 0x100) != 0)" ( (binary_expression "((uint)__quote & 0x100) != 0" (parenthesized_expression "((uint)__quote & 0x100)" ( (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" { (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (if_statement "if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" if (parenthesized_expression "((char *)*piVar15 != (char *)0x0)" ( (binary_expression "(char *)*piVar15 != (char *)0x0" (cast_expression "(char *)*piVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier)) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" { (expression_statement "piVar13 = piVar15;" (assignment_expression "piVar13 = piVar15" identifier = identifier) ;) (if_statement "if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" if (parenthesized_expression "(*(char *)*piVar15 == '\0')" ( (binary_expression "*(char *)*piVar15 == '\0'" (pointer_expression "*(char *)*piVar15" * (cast_expression "(char *)*piVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" { (do_statement "do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');" do (compound_statement "{\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            }" { (expression_statement "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;" (assignment_expression "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar29 = (char *)piVar13[1];" (assignment_expression "pcVar29 = (char *)piVar13[1]" identifier = (cast_expression "(char *)piVar13[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar13[1]" identifier [ number_literal ]))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" { (expression_statement "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];" (assignment_expression "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)]" (pointer_expression "*piVar15" * identifier) = (subscript_expression "piVar15[*(int *)(puVar8 + -0x3c)]" identifier [ (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) ])) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (expression_statement "piVar13 = piVar15 + iVar24;" (assignment_expression "piVar13 = piVar15 + iVar24" identifier = (binary_expression "piVar15 + iVar24" identifier + identifier)) ;) (do_statement "do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);" do (compound_statement "{\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            }" { (expression_statement "iVar12 = *piVar13;" (assignment_expression "iVar12 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "piVar13[-iVar24] = iVar12;" (assignment_expression "piVar13[-iVar24] = iVar12" (subscript_expression "piVar13[-iVar24]" identifier [ (unary_expression "-iVar24" - identifier) ]) = identifier) ;) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (goto_statement "goto LAB_000df0ac;" goto statement_identifier ;) })) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);" (assignment_expression "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" identifier = (call_expression "(**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" ( (pointer_expression "**(code **)(iVar23 + -0x6098)" * (pointer_expression "*(code **)(iVar23 + -0x6098)" * (cast_expression "(code **)(iVar23 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x6098)" ( (binary_expression "iVar23 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,(iVar17 + iVar24) * 4)" ( identifier , (binary_expression "(iVar17 + iVar24) * 4" (parenthesized_expression "(iVar17 + iVar24)" ( (binary_expression "iVar17 + iVar24" identifier + identifier) )) * number_literal) )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar8 + -0x48) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x48) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *piVar11;" (assignment_expression "iVar3 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "piVar15 = piVar11;" (assignment_expression "piVar15 = piVar11" identifier = identifier) ;) (while_statement "while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" while (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" { (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *piVar15;" (assignment_expression "iVar3 = *piVar15" identifier = (pointer_expression "*piVar15" * identifier)) ;) })) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);" statement_identifier : (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;)) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df2c8;" goto statement_identifier ;)) (goto_statement "goto LAB_000df274;" goto statement_identifier ;) })) (expression_statement "iVar24 = *piVar11;" (assignment_expression "iVar24 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (if_statement "if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" { (expression_statement "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;" (assignment_expression "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4" identifier = (binary_expression "*(int *)(puVar8 + -0x48) + iVar17 * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) + (binary_expression "iVar17 * 4" identifier * number_literal))) ;) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" identifier = identifier) ;) (do_statement "do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);" do (compound_statement "{\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        }" { (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) (expression_statement "iVar17 = iVar17 + 1;" (assignment_expression "iVar17 = iVar17 + 1" identifier = (binary_expression "iVar17 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(iVar12 + -4) = iVar24;" (assignment_expression "*(int *)(iVar12 + -4) = iVar24" (pointer_expression "*(int *)(iVar12 + -4)" * (cast_expression "(int *)(iVar12 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -4)" ( (binary_expression "iVar12 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar24 = *piVar13;" (assignment_expression "iVar24 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "iVar12 = iVar12 + 4;" (assignment_expression "iVar12 = iVar12 + 4" identifier = (binary_expression "iVar12 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) ;) })) (expression_statement "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" * (cast_expression "(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" ( (binary_expression "*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) + (binary_expression "(iVar17 + 0x3fffffff) * 4" (parenthesized_expression "(iVar17 + 0x3fffffff)" ( (binary_expression "iVar17 + 0x3fffffff" identifier + number_literal) )) * number_literal)) )))) = number_literal) ;) (if_statement "if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" if (parenthesized_expression "(piVar15 == piVar11)" ( (binary_expression "piVar15 == piVar11" identifier == identifier) )) (compound_statement "{\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }" { (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" if (parenthesized_expression "(*(int *)(puVar8 + -0x38) != 0)" ( (binary_expression "*(int *)(puVar8 + -0x38) != 0" (pointer_expression "*(int *)(puVar8 + -0x38)" * (cast_expression "(int *)(puVar8 + -0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x38)" ( (binary_expression "puVar8 + -0x38" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" { (if_statement "if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;" if (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) )) (goto_statement "goto LAB_000df14c;" goto statement_identifier ;)) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (if_statement "if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" if (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" { (if_statement "if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;" if (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0')" ( (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000df14c;" goto statement_identifier ;)) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) })) })) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);" statement_identifier : (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;)) }))) (expression_statement "pppppppiVar7 = *(int ********)(puVar8 + -0x48);" (assignment_expression "pppppppiVar7 = *(int ********)(puVar8 + -0x48)" identifier = (pointer_expression "*(int ********)(puVar8 + -0x48)" * (cast_expression "(int ********)(puVar8 + -0x48)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 == 0) goto LAB_000df004;" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000df004;" goto statement_identifier ;)) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" identifier = (pointer_expression "*(int **)(puVar8 + -0x30)" * (cast_expression "(int **)(puVar8 + -0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000df34c;" goto statement_identifier ;) })) (if_statement "if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" if (parenthesized_expression "(*(char *)(iVar3 + 1) == '\0')" ( (binary_expression "*(char *)(iVar3 + 1) == '\0'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" identifier = (cast_expression "(int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" ( (type_descriptor "int *******" primitive_type (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 *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x6098)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x6098" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7,8)" ( identifier , number_literal ))))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df3a4;" goto statement_identifier ;)) (if_statement "if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000df634;" goto statement_identifier ;) })) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (if_statement "if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" if (parenthesized_expression "(iVar23 == 2)" ( (binary_expression "iVar23 == 2" identifier == number_literal) )) (compound_statement "{\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" { (if_statement "if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" if (parenthesized_expression "(((uint)__quote & 0x800) == 0)" ( (binary_expression "((uint)__quote & 0x800) == 0" (parenthesized_expression "((uint)__quote & 0x800)" ( (binary_expression "(uint)__quote & 0x800" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n          iVar3 = 1;\n        }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" else (compound_statement "{\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" { (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" identifier (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" identifier = (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier )))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) }))) (goto_statement "goto LAB_000df634;" goto statement_identifier ;) })) (expression_statement "iVar24 = iVar24 + 2;" (assignment_expression "iVar24 = iVar24 + 2" identifier = (binary_expression "iVar24 + 2" identifier + number_literal)) ;) (goto_statement "goto LAB_000df638;" goto statement_identifier ;) })) (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" identifier (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe" identifier = (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" if (parenthesized_expression "(((uint)__quote & 0x400) != 0)" ( (binary_expression "((uint)__quote & 0x400) != 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" { (if_statement "if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" if (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" ( (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000df42c;" goto statement_identifier ;) })) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000debcc;" goto statement_identifier ;) })) (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" identifier = (cast_expression "(int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pcVar26,ppppppiVar21,uVar30)" identifier (argument_list "(pcVar26,ppppppiVar21,uVar30)" ( identifier , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      iVar3 = 1;\n      goto LAB_000debec;\n    }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000debec;" goto statement_identifier ;) })) }))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" statement_identifier : (if_statement "if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" else (compound_statement "{\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" { (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" ( (pointer_expression "**(code **)(iVar23 + -0x7ce8)" * (pointer_expression "*(code **)(iVar23 + -0x7ce8)" * (cast_expression "(code **)(iVar23 + -0x7ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7ce8)" ( (binary_expression "iVar23 + -0x7ce8" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" ( (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" * (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" * (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) })))) (if_statement "if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" identifier = (pointer_expression "*(code **)(iVar23 + -0x7d20)" * (cast_expression "(code **)(iVar23 + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7d20)" ( (binary_expression "iVar23 + -0x7d20" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" else (compound_statement "{\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" { (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" ( (pointer_expression "**(code **)(iVar23 + -0x7cf4)" * (pointer_expression "*(code **)(iVar23 + -0x7cf4)" * (cast_expression "(code **)(iVar23 + -0x7cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf4)" ( (binary_expression "iVar23 + -0x7cf4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" identifier = (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) ;) }))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })))
(translation_unit "/* WARNING: Removing unreachable block (ram,0x000ddde0) */\n\nint glob_testdir(char *dir,int flags)\n\n{\n  char cVar1;\n  int iVar2;\n  int iVar3;\n  long *plVar4;\n  stat *psVar5;\n  stat *psVar6;\n  uint uVar7;\n  size_t sVar8;\n  int *piVar9;\n  wchar_t *pwVar10;\n  ulong uVar11;\n  int iVar12;\n  int iVar13;\n  wchar_t *pathname;\n  stat *psVar14;\n  stat *unaff_s2;\n  undefined1 *puVar15;\n  long *plVar16;\n  undefined *puVar17;\n  code *pcVar18;\n  code *pcVar19;\n  int *piStack_218;\n  undefined4 uStack_214;\n  wchar_t *pwStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  wchar_t *pwStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int iStack_1e4;\n  stat *psStack_1e0;\n  stat *psStack_1dc;\n  long *plStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  stat *psStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  stat *psStack_1a0;\n  stat *psStack_19c;\n  stat sStack_198;\n  wchar_t *pwStack_f4;\n  stat finfo;\n  \n  iVar2 = *(int *)PTR___stack_chk_guard_0015858c;\n  psVar6 = &finfo;\n  if ((flags & 0x10U) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    iVar3 = -1;\n  }\n  else if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }\n  if (iVar2 == *(int *)PTR___stack_chk_guard_0015858c) {\n    return iVar3;\n  }\n  puVar17 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar17 + 0x80e64;\n  pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0);\n  iStack_1b0 = iVar2;\n  psStack_19c = (stat *)dir;\n  iVar2 = (**(code **)(puVar17 + 0x7ad68))();\n  if (iVar2 == 0) {\n    psVar14 = (stat *)dir;\n    if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }\n  }\n  else {\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }\nLAB_000dd804:\n  if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {\n    return (int)psStack_1a0;\n  }\n  pcVar18 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar19 = dequote_pathname;\n  pathname = pwStack_f4;\n  (*pcVar18)();\n  pcStack_1f8 = pcVar18 + 0x80a74;\n  iStack_1e4 = **(int **)(pcVar18 + 0x7aac0);\n  psStack_1e0 = psVar6;\n  psStack_1dc = psVar14;\n  plStack_1d8 = (long *)unaff_s2;\n  pcStack_1d4 = pcVar19;\n  uVar7 = (**(code **)(pcVar18 + 0x7aa14))();\n  pwVar10 = pathname;\n  if (uVar7 < 2) {\n    udequote_pathname((char *)pathname);\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }\n  if (iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)) {\n    return **(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar18 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar19 = glob_pattern_p;\n  (*pcVar18)();\n  uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4);\n  pwStack_210 = pathname;\n  pcStack_20c = pcVar19;\n  iVar2 = (**(code **)(pcVar18 + 0x7a848))();\n  if (iVar2 != 1) {\n    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);\n    if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }\n    do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;\n    return iVar2;\n  }\n  internal_glob_pattern_p((uchar *)pwVar10);\n  iVar2 = FUN_000dddfc();\n  return iVar2;\n}\n\n" comment (function_definition "int glob_testdir(char *dir,int flags)\n\n{\n  char cVar1;\n  int iVar2;\n  int iVar3;\n  long *plVar4;\n  stat *psVar5;\n  stat *psVar6;\n  uint uVar7;\n  size_t sVar8;\n  int *piVar9;\n  wchar_t *pwVar10;\n  ulong uVar11;\n  int iVar12;\n  int iVar13;\n  wchar_t *pathname;\n  stat *psVar14;\n  stat *unaff_s2;\n  undefined1 *puVar15;\n  long *plVar16;\n  undefined *puVar17;\n  code *pcVar18;\n  code *pcVar19;\n  int *piStack_218;\n  undefined4 uStack_214;\n  wchar_t *pwStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  wchar_t *pwStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int iStack_1e4;\n  stat *psStack_1e0;\n  stat *psStack_1dc;\n  long *plStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  stat *psStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  stat *psStack_1a0;\n  stat *psStack_19c;\n  stat sStack_198;\n  wchar_t *pwStack_f4;\n  stat finfo;\n  \n  iVar2 = *(int *)PTR___stack_chk_guard_0015858c;\n  psVar6 = &finfo;\n  if ((flags & 0x10U) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    iVar3 = -1;\n  }\n  else if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }\n  if (iVar2 == *(int *)PTR___stack_chk_guard_0015858c) {\n    return iVar3;\n  }\n  puVar17 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar17 + 0x80e64;\n  pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0);\n  iStack_1b0 = iVar2;\n  psStack_19c = (stat *)dir;\n  iVar2 = (**(code **)(puVar17 + 0x7ad68))();\n  if (iVar2 == 0) {\n    psVar14 = (stat *)dir;\n    if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }\n  }\n  else {\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }\nLAB_000dd804:\n  if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {\n    return (int)psStack_1a0;\n  }\n  pcVar18 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar19 = dequote_pathname;\n  pathname = pwStack_f4;\n  (*pcVar18)();\n  pcStack_1f8 = pcVar18 + 0x80a74;\n  iStack_1e4 = **(int **)(pcVar18 + 0x7aac0);\n  psStack_1e0 = psVar6;\n  psStack_1dc = psVar14;\n  plStack_1d8 = (long *)unaff_s2;\n  pcStack_1d4 = pcVar19;\n  uVar7 = (**(code **)(pcVar18 + 0x7aa14))();\n  pwVar10 = pathname;\n  if (uVar7 < 2) {\n    udequote_pathname((char *)pathname);\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }\n  if (iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)) {\n    return **(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar18 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar19 = glob_pattern_p;\n  (*pcVar18)();\n  uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4);\n  pwStack_210 = pathname;\n  pcStack_20c = pcVar19;\n  iVar2 = (**(code **)(pcVar18 + 0x7a848))();\n  if (iVar2 != 1) {\n    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);\n    if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }\n    do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;\n    return iVar2;\n  }\n  internal_glob_pattern_p((uchar *)pwVar10);\n  iVar2 = FUN_000dddfc();\n  return iVar2;\n}" primitive_type (function_declarator "glob_testdir(char *dir,int flags)" identifier (parameter_list "(char *dir,int flags)" ( (parameter_declaration "char *dir" primitive_type (pointer_declarator "*dir" * identifier)) , (parameter_declaration "int flags" primitive_type identifier) ))) (compound_statement "{\n  char cVar1;\n  int iVar2;\n  int iVar3;\n  long *plVar4;\n  stat *psVar5;\n  stat *psVar6;\n  uint uVar7;\n  size_t sVar8;\n  int *piVar9;\n  wchar_t *pwVar10;\n  ulong uVar11;\n  int iVar12;\n  int iVar13;\n  wchar_t *pathname;\n  stat *psVar14;\n  stat *unaff_s2;\n  undefined1 *puVar15;\n  long *plVar16;\n  undefined *puVar17;\n  code *pcVar18;\n  code *pcVar19;\n  int *piStack_218;\n  undefined4 uStack_214;\n  wchar_t *pwStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  wchar_t *pwStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int iStack_1e4;\n  stat *psStack_1e0;\n  stat *psStack_1dc;\n  long *plStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  stat *psStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  stat *psStack_1a0;\n  stat *psStack_19c;\n  stat sStack_198;\n  wchar_t *pwStack_f4;\n  stat finfo;\n  \n  iVar2 = *(int *)PTR___stack_chk_guard_0015858c;\n  psVar6 = &finfo;\n  if ((flags & 0x10U) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    iVar3 = -1;\n  }\n  else if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }\n  if (iVar2 == *(int *)PTR___stack_chk_guard_0015858c) {\n    return iVar3;\n  }\n  puVar17 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar17 + 0x80e64;\n  pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0);\n  iStack_1b0 = iVar2;\n  psStack_19c = (stat *)dir;\n  iVar2 = (**(code **)(puVar17 + 0x7ad68))();\n  if (iVar2 == 0) {\n    psVar14 = (stat *)dir;\n    if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }\n  }\n  else {\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }\nLAB_000dd804:\n  if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {\n    return (int)psStack_1a0;\n  }\n  pcVar18 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar19 = dequote_pathname;\n  pathname = pwStack_f4;\n  (*pcVar18)();\n  pcStack_1f8 = pcVar18 + 0x80a74;\n  iStack_1e4 = **(int **)(pcVar18 + 0x7aac0);\n  psStack_1e0 = psVar6;\n  psStack_1dc = psVar14;\n  plStack_1d8 = (long *)unaff_s2;\n  pcStack_1d4 = pcVar19;\n  uVar7 = (**(code **)(pcVar18 + 0x7aa14))();\n  pwVar10 = pathname;\n  if (uVar7 < 2) {\n    udequote_pathname((char *)pathname);\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }\n  if (iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)) {\n    return **(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar18 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar19 = glob_pattern_p;\n  (*pcVar18)();\n  uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4);\n  pwStack_210 = pathname;\n  pcStack_20c = pcVar19;\n  iVar2 = (**(code **)(pcVar18 + 0x7a848))();\n  if (iVar2 != 1) {\n    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);\n    if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }\n    do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;\n    return iVar2;\n  }\n  internal_glob_pattern_p((uchar *)pwVar10);\n  iVar2 = FUN_000dddfc();\n  return iVar2;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "long *plVar4;" (sized_type_specifier "long" long) (pointer_declarator "*plVar4" * identifier) ;) (declaration "stat *psVar5;" type_identifier (pointer_declarator "*psVar5" * identifier) ;) (declaration "stat *psVar6;" type_identifier (pointer_declarator "*psVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "wchar_t *pwVar10;" type_identifier (pointer_declarator "*pwVar10" * identifier) ;) (declaration "ulong uVar11;" type_identifier identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "wchar_t *pathname;" type_identifier (pointer_declarator "*pathname" * identifier) ;) (declaration "stat *psVar14;" type_identifier (pointer_declarator "*psVar14" * identifier) ;) (declaration "stat *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "long *plVar16;" (sized_type_specifier "long" long) (pointer_declarator "*plVar16" * identifier) ;) (declaration "undefined *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "code *pcVar18;" type_identifier (pointer_declarator "*pcVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "int *piStack_218;" primitive_type (pointer_declarator "*piStack_218" * identifier) ;) (declaration "undefined4 uStack_214;" type_identifier identifier ;) (declaration "wchar_t *pwStack_210;" type_identifier (pointer_declarator "*pwStack_210" * identifier) ;) (declaration "code *pcStack_20c;" type_identifier (pointer_declarator "*pcStack_20c" * identifier) ;) (declaration "code *pcStack_1f8;" type_identifier (pointer_declarator "*pcStack_1f8" * identifier) ;) (declaration "wchar_t *pwStack_1f0;" type_identifier (pointer_declarator "*pwStack_1f0" * identifier) ;) (declaration "undefined4 uStack_1ec;" type_identifier identifier ;) (declaration "undefined4 uStack_1e8;" type_identifier identifier ;) (declaration "int iStack_1e4;" primitive_type identifier ;) (declaration "stat *psStack_1e0;" type_identifier (pointer_declarator "*psStack_1e0" * identifier) ;) (declaration "stat *psStack_1dc;" type_identifier (pointer_declarator "*psStack_1dc" * identifier) ;) (declaration "long *plStack_1d8;" (sized_type_specifier "long" long) (pointer_declarator "*plStack_1d8" * identifier) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "undefined *puStack_1c0;" type_identifier (pointer_declarator "*puStack_1c0" * identifier) ;) (declaration "stat *psStack_1b4;" type_identifier (pointer_declarator "*psStack_1b4" * identifier) ;) (declaration "int iStack_1b0;" primitive_type identifier ;) (declaration "int iStack_1ac;" primitive_type identifier ;) (declaration "int iStack_1a8;" primitive_type identifier ;) (declaration "uint uStack_1a4;" type_identifier identifier ;) (declaration "stat *psStack_1a0;" type_identifier (pointer_declarator "*psStack_1a0" * identifier) ;) (declaration "stat *psStack_19c;" type_identifier (pointer_declarator "*psStack_19c" * identifier) ;) (declaration "stat sStack_198;" type_identifier identifier ;) (declaration "wchar_t *pwStack_f4;" type_identifier (pointer_declarator "*pwStack_f4" * identifier) ;) (declaration "stat finfo;" type_identifier identifier ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_0015858c;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_0015858c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "psVar6 = &finfo;" (assignment_expression "psVar6 = &finfo" identifier = (pointer_expression "&finfo" & identifier)) ;) (if_statement "if ((flags & 0x10U) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" if (parenthesized_expression "((flags & 0x10U) == 0)" ( (binary_expression "(flags & 0x10U) == 0" (parenthesized_expression "(flags & 0x10U)" ( (binary_expression "flags & 0x10U" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___xstat64_001582e8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___xstat64_001582e8)(3)" identifier = (call_expression "(*(code *)PTR___xstat64_001582e8)(3)" (parenthesized_expression "(*(code *)PTR___xstat64_001582e8)" ( (pointer_expression "*(code *)PTR___xstat64_001582e8" * (cast_expression "(code *)PTR___xstat64_001582e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }) (else_clause "else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" else (compound_statement "{\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3)" identifier = (call_expression "(*(code *)PTR___lxstat64_001582c8)(3)" (parenthesized_expression "(*(code *)PTR___lxstat64_001582c8)" ( (pointer_expression "*(code *)PTR___lxstat64_001582c8" * (cast_expression "(code *)PTR___lxstat64_001582c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }))) (if_statement "if (iVar3 < 0) {\n    iVar3 = -1;\n  }\n  else if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n    iVar3 = -1;\n  }" { (expression_statement "iVar3 = -1;" (assignment_expression "iVar3 = -1" identifier = number_literal) ;) }) (else_clause "else if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }" else (if_statement "if ((finfo.st_mode & 0xf000) == 0xa000) {\n    iVar3 = -2;\n  }\n  else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "((finfo.st_mode & 0xf000) == 0xa000)" ( (binary_expression "(finfo.st_mode & 0xf000) == 0xa000" (parenthesized_expression "(finfo.st_mode & 0xf000)" ( (binary_expression "finfo.st_mode & 0xf000" (field_expression "finfo.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar3 = -2;\n  }" { (expression_statement "iVar3 = -2;" (assignment_expression "iVar3 = -2" identifier = number_literal) ;) }) (else_clause "else {\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }" else (compound_statement "{\n    iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);\n  }" { (expression_statement "iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000);" (assignment_expression "iVar3 = -(uint)((finfo.st_mode & 0xf000) != 0x4000)" identifier = (unary_expression "-(uint)((finfo.st_mode & 0xf000) != 0x4000)" - (call_expression "(uint)((finfo.st_mode & 0xf000) != 0x4000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((finfo.st_mode & 0xf000) != 0x4000)" ( (binary_expression "(finfo.st_mode & 0xf000) != 0x4000" (parenthesized_expression "(finfo.st_mode & 0xf000)" ( (binary_expression "finfo.st_mode & 0xf000" (field_expression "finfo.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))))) ;) }))))) (if_statement "if (iVar2 == *(int *)PTR___stack_chk_guard_0015858c) {\n    return iVar3;\n  }" if (parenthesized_expression "(iVar2 == *(int *)PTR___stack_chk_guard_0015858c)" ( (binary_expression "iVar2 == *(int *)PTR___stack_chk_guard_0015858c" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "puVar17 = PTR___stack_chk_fail_0015853c;" (assignment_expression "puVar17 = PTR___stack_chk_fail_0015853c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0015853c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015853c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015853c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0015853c" * (cast_expression "(code *)PTR___stack_chk_fail_0015853c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_1c0 = puVar17 + 0x80e64;" (assignment_expression "puStack_1c0 = puVar17 + 0x80e64" identifier = (binary_expression "puVar17 + 0x80e64" identifier + number_literal)) ;) (expression_statement "pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0);" (assignment_expression "pwStack_f4 = (wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0)" identifier = (cast_expression "(wchar_t *)**(undefined4 **)(puVar17 + 0x7aeb0)" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + 0x7aeb0)" * (pointer_expression "*(undefined4 **)(puVar17 + 0x7aeb0)" * (cast_expression "(undefined4 **)(puVar17 + 0x7aeb0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x7aeb0)" ( (binary_expression "puVar17 + 0x7aeb0" identifier + number_literal) ))))))) ;) (expression_statement "iStack_1b0 = iVar2;" (assignment_expression "iStack_1b0 = iVar2" identifier = identifier) ;) (expression_statement "psStack_19c = (stat *)dir;" (assignment_expression "psStack_19c = (stat *)dir" identifier = (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar2 = (**(code **)(puVar17 + 0x7ad68))();" (assignment_expression "iVar2 = (**(code **)(puVar17 + 0x7ad68))()" identifier = (call_expression "(**(code **)(puVar17 + 0x7ad68))()" (parenthesized_expression "(**(code **)(puVar17 + 0x7ad68))" ( (pointer_expression "**(code **)(puVar17 + 0x7ad68)" * (pointer_expression "*(code **)(puVar17 + 0x7ad68)" * (cast_expression "(code **)(puVar17 + 0x7ad68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x7ad68)" ( (binary_expression "puVar17 + 0x7ad68" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar2 == 0) {\n    psVar14 = (stat *)dir;\n    if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }\n  }\n  else {\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    psVar14 = (stat *)dir;\n    if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }\n  }" { (expression_statement "psVar14 = (stat *)dir;" (assignment_expression "psVar14 = (stat *)dir" identifier = (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (((uint)psVar6 & 1) == 0) {\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }\n    else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }" if (parenthesized_expression "(((uint)psVar6 & 1) == 0)" ( (binary_expression "((uint)psVar6 & 1) == 0" (parenthesized_expression "((uint)psVar6 & 1)" ( (binary_expression "(uint)psVar6 & 1" (cast_expression "(uint)psVar6" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      psStack_1a0 = psStack_19c;\n      psVar6 = (stat *)0x0;\n    }" { (expression_statement "psStack_1a0 = psStack_19c;" (assignment_expression "psStack_1a0 = psStack_19c" identifier = identifier) ;) (expression_statement "psVar6 = (stat *)0x0;" (assignment_expression "psVar6 = (stat *)0x0" identifier = (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }" else (compound_statement "{\n      uVar11 = ((stat *)dir)->st_dev;\n      if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n    }" { (expression_statement "uVar11 = ((stat *)dir)->st_dev;" (assignment_expression "uVar11 = ((stat *)dir)->st_dev" identifier = (field_expression "((stat *)dir)->st_dev" (parenthesized_expression "((stat *)dir)" ( (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier)) ;) (if_statement "if (uVar11 == 0) {\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }\n      else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }" if (parenthesized_expression "(uVar11 == 0)" ( (binary_expression "uVar11 == 0" identifier == number_literal) )) (compound_statement "{\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }" { (expression_statement "psStack_1a0 = psStack_19c;" (assignment_expression "psStack_1a0 = psStack_19c" identifier = identifier) ;) (expression_statement "psVar6 = (stat *)dir;" (assignment_expression "psVar6 = (stat *)dir" identifier = (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }" else (compound_statement "{\n        unaff_s2 = (stat *)0x4000;\n        do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);\n        psStack_1a0 = psStack_19c;\n        psVar6 = (stat *)dir;\n      }" { (expression_statement "unaff_s2 = (stat *)0x4000;" (assignment_expression "unaff_s2 = (stat *)0x4000" identifier = (cast_expression "(stat *)0x4000" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        } while (uVar11 != 0);" do (compound_statement "{\n          iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);\n          psVar14 = &sStack_198;\n          if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }\n          dir = (char *)((stat *)dir)->st_pad1;\n          uVar11 = *(ulong *)dir;\n        }" { (expression_statement "iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198);" (assignment_expression "iVar2 = (**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,uVar11,&sStack_198)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,uVar11,&sStack_198)" ( number_literal , identifier , (pointer_expression "&sStack_198" & identifier) )))) ;) (expression_statement "psVar14 = &sStack_198;" (assignment_expression "psVar14 = &sStack_198" identifier = (pointer_expression "&sStack_198" & identifier)) ;) (if_statement "if ((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }" if (parenthesized_expression "((iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000))" ( (binary_expression "(iVar2 == 0) && ((sStack_198.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) && (parenthesized_expression "((sStack_198.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(sStack_198.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(sStack_198.st_mode & 0xf000)" ( (binary_expression "sStack_198.st_mode & 0xf000" (field_expression "sStack_198.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            uVar11 = ((stat *)dir)->st_dev;\n            iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n            psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);\n            psVar6 = (stat *)dir;\n            if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n            puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);\n            *puVar15 = 0x2f;\n            puVar15[1] = 0;\n            ((stat *)dir)->st_dev = (ulong)psStack_1a0;\n          }" { (expression_statement "uVar11 = ((stat *)dir)->st_dev;" (assignment_expression "uVar11 = ((stat *)dir)->st_dev" identifier = (field_expression "((stat *)dir)->st_dev" (parenthesized_expression "((stat *)dir)" ( (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier)) ;) (expression_statement "iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);" (assignment_expression "iVar2 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(uVar11)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(uVar11)" ( identifier )))) ;) (expression_statement "psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2);" (assignment_expression "psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2)" identifier = (cast_expression "(stat *)(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_1c0 + -0x6098))(uVar11,iVar2 + 2)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6098))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6098)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6098)" * (cast_expression "(code **)(puStack_1c0 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6098)" ( (binary_expression "puStack_1c0 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(uVar11,iVar2 + 2)" ( identifier , (binary_expression "iVar2 + 2" identifier + number_literal) ))))) ;) (expression_statement "psVar6 = (stat *)dir;" (assignment_expression "psVar6 = (stat *)dir" identifier = (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;" if (parenthesized_expression "(psStack_1a0 == (stat *)0x0)" ( (binary_expression "psStack_1a0 == (stat *)0x0" identifier == (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000dd804;" goto statement_identifier ;)) (expression_statement "puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4);" (assignment_expression "puVar15 = (undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4)" identifier = (cast_expression "(undefined1 *)((int)psStack_1a0->st_pad1 + iVar2 + -4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_1a0->st_pad1 + iVar2 + -4)" ( (binary_expression "(int)psStack_1a0->st_pad1 + iVar2 + -4" (binary_expression "(int)psStack_1a0->st_pad1 + iVar2" (cast_expression "(int)psStack_1a0->st_pad1" ( (type_descriptor "int" primitive_type) ) (field_expression "psStack_1a0->st_pad1" identifier -> field_identifier)) + identifier) + number_literal) )))) ;) (expression_statement "*puVar15 = 0x2f;" (assignment_expression "*puVar15 = 0x2f" (pointer_expression "*puVar15" * identifier) = number_literal) ;) (expression_statement "puVar15[1] = 0;" (assignment_expression "puVar15[1] = 0" (subscript_expression "puVar15[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "((stat *)dir)->st_dev = (ulong)psStack_1a0;" (assignment_expression "((stat *)dir)->st_dev = (ulong)psStack_1a0" (field_expression "((stat *)dir)->st_dev" (parenthesized_expression "((stat *)dir)" ( (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) = (cast_expression "(ulong)psStack_1a0" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) })) (expression_statement "dir = (char *)((stat *)dir)->st_pad1;" (assignment_expression "dir = (char *)((stat *)dir)->st_pad1" identifier = (cast_expression "(char *)((stat *)dir)->st_pad1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "((stat *)dir)->st_pad1" (parenthesized_expression "((stat *)dir)" ( (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) ;) (expression_statement "uVar11 = *(ulong *)dir;" (assignment_expression "uVar11 = *(ulong *)dir" identifier = (pointer_expression "*(ulong *)dir" * (cast_expression "(ulong *)dir" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) while (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) ;) (expression_statement "psStack_1a0 = psStack_19c;" (assignment_expression "psStack_1a0 = psStack_19c" identifier = identifier) ;) (expression_statement "psVar6 = (stat *)dir;" (assignment_expression "psVar6 = (stat *)dir" identifier = (cast_expression "(stat *)dir" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) }))) }) (else_clause "else {\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }" else (compound_statement "{\n    cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);\n    psVar14 = (stat *)psStack_19c->st_dev;\n    if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }\n    *(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;\n    pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n    if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }\n    (**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);\n  }" { (expression_statement "cVar1 = *(char *)(iStack_1b0 + iVar2 + -1);" (assignment_expression "cVar1 = *(char *)(iStack_1b0 + iVar2 + -1)" identifier = (pointer_expression "*(char *)(iStack_1b0 + iVar2 + -1)" * (cast_expression "(char *)(iStack_1b0 + iVar2 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_1b0 + iVar2 + -1)" ( (binary_expression "iStack_1b0 + iVar2 + -1" (binary_expression "iStack_1b0 + iVar2" identifier + identifier) + number_literal) ))))) ;) (expression_statement "psVar14 = (stat *)psStack_19c->st_dev;" (assignment_expression "psVar14 = (stat *)psStack_19c->st_dev" identifier = (cast_expression "(stat *)psStack_19c->st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "psStack_19c->st_dev" identifier -> field_identifier))) ;) (if_statement "if (psVar14 == (stat *)0x0) {\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }\n    else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }" if (parenthesized_expression "(psVar14 == (stat *)0x0)" ( (binary_expression "psVar14 == (stat *)0x0" identifier == (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;\n      iVar3 = 0;\n    }" { (expression_statement "psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4);" (assignment_expression "psStack_1a0 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(4)" identifier = (cast_expression "(stat *)(**(code **)(puStack_1c0 + -0x60a4))(4)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_1c0 + -0x60a4))(4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(4)" ( number_literal ))))) ;) (if_statement "if (psStack_1a0 == (stat *)0x0) goto LAB_000dd804;" if (parenthesized_expression "(psStack_1a0 == (stat *)0x0)" ( (binary_expression "psStack_1a0 == (stat *)0x0" identifier == (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000dd804;" goto statement_identifier ;)) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }" else (compound_statement "{\n      plVar16 = psStack_19c->st_pad1;\n      plVar4 = plVar16;\n      iVar3 = 0;\n      do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);\n      psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);\n      psStack_1a0 = psVar5;\n      if (psVar5 == (stat *)0x0) goto LAB_000dd804;\n      iVar12 = 0;\n      iStack_1ac = iVar2 + 3;\n      iStack_1a8 = (uint)(cVar1 != '/') + iVar2;\n      uStack_1a4 = (uint)psVar6 & 1;\n      unaff_s2 = psVar5;\n      do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);\n    }" { (expression_statement "plVar16 = psStack_19c->st_pad1;" (assignment_expression "plVar16 = psStack_19c->st_pad1" identifier = (field_expression "psStack_19c->st_pad1" identifier -> field_identifier)) ;) (expression_statement "plVar4 = plVar16;" (assignment_expression "plVar4 = plVar16" identifier = identifier) ;) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      } while (iVar12 != 0);" do (compound_statement "{\n        iVar13 = iVar3;\n        iVar12 = *plVar4;\n        plVar4 = plVar4 + 1;\n        iVar3 = iVar13 + 1;\n      }" { (expression_statement "iVar13 = iVar3;" (assignment_expression "iVar13 = iVar3" identifier = identifier) ;) (expression_statement "iVar12 = *plVar4;" (assignment_expression "iVar12 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) (expression_statement "plVar4 = plVar4 + 1;" (assignment_expression "plVar4 = plVar4 + 1" identifier = (binary_expression "plVar4 + 1" identifier + number_literal)) ;) (expression_statement "iVar3 = iVar13 + 1;" (assignment_expression "iVar3 = iVar13 + 1" identifier = (binary_expression "iVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) ;) (expression_statement "psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4);" (assignment_expression "psVar5 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4)" identifier = (cast_expression "(stat *)(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_1c0 + -0x60a4))((iVar13 + 2) * 4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "((iVar13 + 2) * 4)" ( (binary_expression "(iVar13 + 2) * 4" (parenthesized_expression "(iVar13 + 2)" ( (binary_expression "iVar13 + 2" identifier + number_literal) )) * number_literal) ))))) ;) (expression_statement "psStack_1a0 = psVar5;" (assignment_expression "psStack_1a0 = psVar5" identifier = identifier) ;) (if_statement "if (psVar5 == (stat *)0x0) goto LAB_000dd804;" if (parenthesized_expression "(psVar5 == (stat *)0x0)" ( (binary_expression "psVar5 == (stat *)0x0" identifier == (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000dd804;" goto statement_identifier ;)) (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" identifier = number_literal) ;) (expression_statement "iStack_1ac = iVar2 + 3;" (assignment_expression "iStack_1ac = iVar2 + 3" identifier = (binary_expression "iVar2 + 3" identifier + number_literal)) ;) (expression_statement "iStack_1a8 = (uint)(cVar1 != '/') + iVar2;" (assignment_expression "iStack_1a8 = (uint)(cVar1 != '/') + iVar2" identifier = (binary_expression "(uint)(cVar1 != '/') + iVar2" (call_expression "(uint)(cVar1 != '/')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(cVar1 != '/')" ( (binary_expression "cVar1 != '/'" identifier != (char_literal "'/'" ' character ')) ))) + identifier)) ;) (expression_statement "uStack_1a4 = (uint)psVar6 & 1;" (assignment_expression "uStack_1a4 = (uint)psVar6 & 1" identifier = (binary_expression "(uint)psVar6 & 1" (cast_expression "(uint)psVar6" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "unaff_s2 = psVar5;" (assignment_expression "unaff_s2 = psVar5" identifier = identifier) ;) (do_statement "do {\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      } while (psVar14 != (stat *)0x0);" do (compound_statement "{\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);\n        psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        unaff_s2->st_dev = (ulong)psVar6;\n        psStack_1b4 = unaff_s2;\n        if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);\n        if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }\n        (**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);\n        if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }\n        iVar12 = iVar12 + 1;\n        iVar3 = iVar12 * 4;\n        psVar14 = (stat *)*plVar16;\n        unaff_s2 = (stat *)unaff_s2->st_pad1;\n        plVar16 = plVar16 + 1;\n      }" { (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(psVar14)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(psVar14)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(psVar14)" ( identifier )))) ;) (expression_statement "psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);" (assignment_expression "psVar6 = (stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" identifier = (cast_expression "(stat *)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iStack_1ac + iVar3)" ( (binary_expression "iStack_1ac + iVar3" identifier + identifier) ))))) ;) (expression_statement "unaff_s2->st_dev = (ulong)psVar6;" (assignment_expression "unaff_s2->st_dev = (ulong)psVar6" (field_expression "unaff_s2->st_dev" identifier -> field_identifier) = (cast_expression "(ulong)psVar6" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "psStack_1b4 = unaff_s2;" (assignment_expression "psStack_1b4 = unaff_s2" identifier = identifier) ;) (if_statement "if (psVar6 == (stat *)0x0) {\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }" if (parenthesized_expression "(psVar6 == (stat *)0x0)" ( (binary_expression "psVar6 == (stat *)0x0" identifier == (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }\n          iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);\n          return iVar2;\n        }" { (if_statement "if (iVar12 != 0) {\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);\n            return iVar2;\n          }" { (expression_statement "iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev);" (assignment_expression "iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(psVar5->st_dev)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(psVar5->st_dev)" ( (field_expression "psVar5->st_dev" identifier -> field_identifier) )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0);" (assignment_expression "iVar2 = (**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(psStack_1a0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(psStack_1a0)" ( identifier )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))(psVar6,iStack_1b0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(psVar6,iStack_1b0)" ( identifier , identifier ))) ;) (if_statement "if (cVar1 != '/') {\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }" if (parenthesized_expression "(cVar1 != '/')" ( (binary_expression "cVar1 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n          *(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;\n        }" { (expression_statement "*(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f;" (assignment_expression "*(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4) = 0x2f" (pointer_expression "*(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4)" * (cast_expression "(undefined1 *)((int)psVar6->st_pad1 + iVar2 + -4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar6->st_pad1 + iVar2 + -4)" ( (binary_expression "(int)psVar6->st_pad1 + iVar2 + -4" (binary_expression "(int)psVar6->st_pad1 + iVar2" (cast_expression "(int)psVar6->st_pad1" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar6->st_pad1" identifier -> field_identifier)) + identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "((int)psVar6->st_pad1 + iStack_1a8 + -4,psVar14)" ( (binary_expression "(int)psVar6->st_pad1 + iStack_1a8 + -4" (binary_expression "(int)psVar6->st_pad1 + iStack_1a8" (cast_expression "(int)psVar6->st_pad1" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar6->st_pad1" identifier -> field_identifier)) + identifier) + number_literal) , identifier ))) ;) (if_statement "if (((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)) {\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }" if (parenthesized_expression "(((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000))" ( (binary_expression "((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)) && ((sStack_198.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "((uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0))" ( (binary_expression "(uStack_1a4 != 0) &&\n            (iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)" (parenthesized_expression "(uStack_1a4 != 0)" ( (binary_expression "uStack_1a4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0)" ( (comma_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198),\n            psVar14 = psStack_1b4, iVar3 == 0" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,psStack_1b4->st_dev,&sStack_198)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,psStack_1b4->st_dev,&sStack_198)" ( number_literal , (field_expression "psStack_1b4->st_dev" identifier -> field_identifier) , (pointer_expression "&sStack_198" & identifier) )))) , (comma_expression "psVar14 = psStack_1b4, iVar3 == 0" (assignment_expression "psVar14 = psStack_1b4" identifier = identifier) , (binary_expression "iVar3 == 0" identifier == number_literal))) ))) )) && (parenthesized_expression "((sStack_198.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(sStack_198.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(sStack_198.st_mode & 0xf000)" ( (binary_expression "sStack_198.st_mode & 0xf000" (field_expression "sStack_198.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n          uVar11 = psStack_1b4->st_dev;\n          iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);\n          psVar6 = (stat *)(uVar11 + iVar3);\n          *(char *)&psVar6->st_dev = '/';\n          *(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;\n        }" { (expression_statement "uVar11 = psStack_1b4->st_dev;" (assignment_expression "uVar11 = psStack_1b4->st_dev" identifier = (field_expression "psStack_1b4->st_dev" identifier -> field_identifier)) ;) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(uVar11)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(uVar11)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(uVar11)" ( identifier )))) ;) (expression_statement "psVar6 = (stat *)(uVar11 + iVar3);" (assignment_expression "psVar6 = (stat *)(uVar11 + iVar3)" identifier = (cast_expression "(stat *)(uVar11 + iVar3)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar11 + iVar3)" ( (binary_expression "uVar11 + iVar3" identifier + identifier) )))) ;) (expression_statement "*(char *)&psVar6->st_dev = '/';" (assignment_expression "*(char *)&psVar6->st_dev = '/'" (pointer_expression "*(char *)&psVar6->st_dev" * (cast_expression "(char *)&psVar6->st_dev" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar6->st_dev" & (field_expression "psVar6->st_dev" identifier -> field_identifier)))) = (char_literal "'/'" ' character ')) ;) (expression_statement "*(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0;" (assignment_expression "*(undefined1 *)(psVar14->st_dev + iVar3 + 1) = 0" (pointer_expression "*(undefined1 *)(psVar14->st_dev + iVar3 + 1)" * (cast_expression "(undefined1 *)(psVar14->st_dev + iVar3 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(psVar14->st_dev + iVar3 + 1)" ( (binary_expression "psVar14->st_dev + iVar3 + 1" (binary_expression "psVar14->st_dev + iVar3" (field_expression "psVar14->st_dev" identifier -> field_identifier) + identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "iVar12 = iVar12 + 1;" (assignment_expression "iVar12 = iVar12 + 1" identifier = (binary_expression "iVar12 + 1" identifier + number_literal)) ;) (expression_statement "iVar3 = iVar12 * 4;" (assignment_expression "iVar3 = iVar12 * 4" identifier = (binary_expression "iVar12 * 4" identifier * number_literal)) ;) (expression_statement "psVar14 = (stat *)*plVar16;" (assignment_expression "psVar14 = (stat *)*plVar16" identifier = (cast_expression "(stat *)*plVar16" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar16" * identifier))) ;) (expression_statement "unaff_s2 = (stat *)unaff_s2->st_pad1;" (assignment_expression "unaff_s2 = (stat *)unaff_s2->st_pad1" identifier = (cast_expression "(stat *)unaff_s2->st_pad1" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s2->st_pad1" identifier -> field_identifier))) ;) (expression_statement "plVar16 = plVar16 + 1;" (assignment_expression "plVar16 = plVar16 + 1" identifier = (binary_expression "plVar16 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(psVar14 != (stat *)0x0)" ( (binary_expression "psVar14 != (stat *)0x0" identifier != (cast_expression "(stat *)0x0" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "*(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0;" (assignment_expression "*(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4) = 0" (pointer_expression "*(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4)" * (cast_expression "(undefined4 *)((int)psStack_1a0->st_pad1 + iVar3 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_1a0->st_pad1 + iVar3 + -4)" ( (binary_expression "(int)psStack_1a0->st_pad1 + iVar3 + -4" (binary_expression "(int)psStack_1a0->st_pad1 + iVar3" (cast_expression "(int)psStack_1a0->st_pad1" ( (type_descriptor "int" primitive_type) ) (field_expression "psStack_1a0->st_pad1" identifier -> field_identifier)) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar18 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar18 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (if_statement "if (psStack_19c->st_dev != 0) {\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }" if (parenthesized_expression "(psStack_19c->st_dev != 0)" ( (binary_expression "psStack_19c->st_dev != 0" (field_expression "psStack_19c->st_dev" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n      plVar4 = psStack_19c->st_pad1;\n      do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);\n    }" { (expression_statement "plVar4 = psStack_19c->st_pad1;" (assignment_expression "plVar4 = psStack_19c->st_pad1" identifier = (field_expression "psStack_19c->st_pad1" identifier -> field_identifier)) ;) (do_statement "do {\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      } while (iVar2 != 0);" do (compound_statement "{\n        (*pcVar18)();\n        psVar6 = (stat *)(plVar4 + 1);\n        iVar2 = *plVar4;\n        pcVar18 = *(code **)(puStack_1c0 + -0x5f94);\n        plVar4 = (long *)psVar6;\n      }" { (expression_statement "(*pcVar18)();" (call_expression "(*pcVar18)()" (parenthesized_expression "(*pcVar18)" ( (pointer_expression "*pcVar18" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "psVar6 = (stat *)(plVar4 + 1);" (assignment_expression "psVar6 = (stat *)(plVar4 + 1)" identifier = (cast_expression "(stat *)(plVar4 + 1)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar4 + 1)" ( (binary_expression "plVar4 + 1" identifier + number_literal) )))) ;) (expression_statement "iVar2 = *plVar4;" (assignment_expression "iVar2 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) (expression_statement "pcVar18 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar18 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "plVar4 = (long *)psVar6;" (assignment_expression "plVar4 = (long *)psVar6" identifier = (cast_expression "(long *)psVar6" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) while (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(psStack_19c);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(psStack_19c)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(psStack_19c)" ( identifier ))) ;) }))) (labeled_statement "LAB_000dd804:\n  if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {\n    return (int)psStack_1a0;\n  }" statement_identifier : (if_statement "if (pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)) {\n    return (int)psStack_1a0;\n  }" if (parenthesized_expression "(pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4))" ( (binary_expression "pwStack_f4 == (wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)" identifier == (cast_expression "(wchar_t *)**(int **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(puStack_1c0 + -0x5fb4)" * (pointer_expression "*(int **)(puStack_1c0 + -0x5fb4)" * (cast_expression "(int **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5fb4)" ( (binary_expression "puStack_1c0 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return (int)psStack_1a0;\n  }" { (return_statement "return (int)psStack_1a0;" return (cast_expression "(int)psStack_1a0" ( (type_descriptor "int" primitive_type) ) identifier) ;) }))) (expression_statement "pcVar18 = *(code **)(puStack_1c0 + -0x6004);" (assignment_expression "pcVar18 = *(code **)(puStack_1c0 + -0x6004)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x6004)" * (cast_expression "(code **)(puStack_1c0 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6004)" ( (binary_expression "puStack_1c0 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar19 = dequote_pathname;" (assignment_expression "pcVar19 = dequote_pathname" identifier = identifier) ;) (expression_statement "pathname = pwStack_f4;" (assignment_expression "pathname = pwStack_f4" identifier = identifier) ;) (expression_statement "(*pcVar18)();" (call_expression "(*pcVar18)()" (parenthesized_expression "(*pcVar18)" ( (pointer_expression "*pcVar18" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1f8 = pcVar18 + 0x80a74;" (assignment_expression "pcStack_1f8 = pcVar18 + 0x80a74" identifier = (binary_expression "pcVar18 + 0x80a74" identifier + number_literal)) ;) (expression_statement "iStack_1e4 = **(int **)(pcVar18 + 0x7aac0);" (assignment_expression "iStack_1e4 = **(int **)(pcVar18 + 0x7aac0)" identifier = (pointer_expression "**(int **)(pcVar18 + 0x7aac0)" * (pointer_expression "*(int **)(pcVar18 + 0x7aac0)" * (cast_expression "(int **)(pcVar18 + 0x7aac0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x7aac0)" ( (binary_expression "pcVar18 + 0x7aac0" identifier + number_literal) )))))) ;) (expression_statement "psStack_1e0 = psVar6;" (assignment_expression "psStack_1e0 = psVar6" identifier = identifier) ;) (expression_statement "psStack_1dc = psVar14;" (assignment_expression "psStack_1dc = psVar14" identifier = identifier) ;) (expression_statement "plStack_1d8 = (long *)unaff_s2;" (assignment_expression "plStack_1d8 = (long *)unaff_s2" identifier = (cast_expression "(long *)unaff_s2" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcStack_1d4 = pcVar19;" (assignment_expression "pcStack_1d4 = pcVar19" identifier = identifier) ;) (expression_statement "uVar7 = (**(code **)(pcVar18 + 0x7aa14))();" (assignment_expression "uVar7 = (**(code **)(pcVar18 + 0x7aa14))()" identifier = (call_expression "(**(code **)(pcVar18 + 0x7aa14))()" (parenthesized_expression "(**(code **)(pcVar18 + 0x7aa14))" ( (pointer_expression "**(code **)(pcVar18 + 0x7aa14)" * (pointer_expression "*(code **)(pcVar18 + 0x7aa14)" * (cast_expression "(code **)(pcVar18 + 0x7aa14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x7aa14)" ( (binary_expression "pcVar18 + 0x7aa14" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "pwVar10 = pathname;" (assignment_expression "pwVar10 = pathname" identifier = identifier) ;) (if_statement "if (uVar7 < 2) {\n    udequote_pathname((char *)pathname);\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }" if (parenthesized_expression "(uVar7 < 2)" ( (binary_expression "uVar7 < 2" identifier < number_literal) )) (compound_statement "{\n    udequote_pathname((char *)pathname);\n  }" { (expression_statement "udequote_pathname((char *)pathname);" (call_expression "udequote_pathname((char *)pathname)" identifier (argument_list "((char *)pathname)" ( (cast_expression "(char *)pathname" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) }) (else_clause "else {\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }" else (compound_statement "{\n    iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();\n    sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);\n    if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }\n  }" { (expression_statement "iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))();" (assignment_expression "iVar2 = (**(code **)(pcStack_1f8 + -0x60fc))()" identifier = (call_expression "(**(code **)(pcStack_1f8 + -0x60fc))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x60fc)" * (cast_expression "(code **)(pcStack_1f8 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x60fc)" ( (binary_expression "pcStack_1f8 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname);" (assignment_expression "sVar8 = xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname)" identifier = (call_expression "xdupmbstowcs(&pwStack_1f0,(char ***)0x0,(char *)pathname)" identifier (argument_list "(&pwStack_1f0,(char ***)0x0,(char *)pathname)" ( (pointer_expression "&pwStack_1f0" & identifier) , (cast_expression "(char ***)0x0" ( (type_descriptor "char ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal) , (cast_expression "(char *)pathname" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (sVar8 == 0xffffffff) {\n      udequote_pathname((char *)pathname);\n    }\n    else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }" if (parenthesized_expression "(sVar8 == 0xffffffff)" ( (binary_expression "sVar8 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n      udequote_pathname((char *)pathname);\n    }" { (expression_statement "udequote_pathname((char *)pathname);" (call_expression "udequote_pathname((char *)pathname)" identifier (argument_list "((char *)pathname)" ( (cast_expression "(char *)pathname" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) }) (else_clause "else {\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }" else (compound_statement "{\n      iVar13 = 0;\n      iVar12 = 0;\n      iVar3 = 0;\n      do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);\n      if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);\n      pathname = (wchar_t *)((int)pathname + iVar2);\n      *(uchar *)pathname = '\0';\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n      pwVar10 = pwStack_1f0;\n    }" { (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" identifier = number_literal) ;) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      } while (*piVar9 != 0);" do (compound_statement "{\n        if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;\n        if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;\n        if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }\n        iVar12 = iVar12 + 1;\n        *(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];\n        piVar9 = pwStack_1f0 + iVar3;\n        iVar13 = iVar13 + 4;\n        iVar3 = iVar3 + 1;\n      }" { (if_statement "if (pwStack_1f0 == (wchar_t *)0x0) goto LAB_000ddc04;" if (parenthesized_expression "(pwStack_1f0 == (wchar_t *)0x0)" ( (binary_expression "pwStack_1f0 == (wchar_t *)0x0" identifier == (cast_expression "(wchar_t *)0x0" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ddc04;" goto statement_identifier ;)) (if_statement "if (pwStack_1f0[iVar3] == 0) goto LAB_000ddbf8;" if (parenthesized_expression "(pwStack_1f0[iVar3] == 0)" ( (binary_expression "pwStack_1f0[iVar3] == 0" (subscript_expression "pwStack_1f0[iVar3]" identifier [ identifier ]) == number_literal) )) (goto_statement "goto LAB_000ddbf8;" goto statement_identifier ;)) (if_statement "if (pwStack_1f0[iVar3] == 0x5c) {\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }" if (parenthesized_expression "(pwStack_1f0[iVar3] == 0x5c)" ( (binary_expression "pwStack_1f0[iVar3] == 0x5c" (subscript_expression "pwStack_1f0[iVar3]" identifier [ identifier ]) == number_literal) )) (compound_statement "{\n          iVar2 = FUN_000ddb8c();\n          return iVar2;\n        }" { (expression_statement "iVar2 = FUN_000ddb8c();" (assignment_expression "iVar2 = FUN_000ddb8c()" identifier = (call_expression "FUN_000ddb8c()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "iVar12 = iVar12 + 1;" (assignment_expression "iVar12 = iVar12 + 1" identifier = (binary_expression "iVar12 + 1" identifier + number_literal)) ;) (expression_statement "*(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3];" (assignment_expression "*(wchar_t *)((int)pwStack_1f0 + iVar13) = pwStack_1f0[iVar3]" (pointer_expression "*(wchar_t *)((int)pwStack_1f0 + iVar13)" * (cast_expression "(wchar_t *)((int)pwStack_1f0 + iVar13)" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pwStack_1f0 + iVar13)" ( (binary_expression "(int)pwStack_1f0 + iVar13" (cast_expression "(int)pwStack_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (subscript_expression "pwStack_1f0[iVar3]" identifier [ identifier ])) ;) (expression_statement "piVar9 = pwStack_1f0 + iVar3;" (assignment_expression "piVar9 = pwStack_1f0 + iVar3" identifier = (binary_expression "pwStack_1f0 + iVar3" identifier + identifier)) ;) (expression_statement "iVar13 = iVar13 + 4;" (assignment_expression "iVar13 = iVar13 + 4" identifier = (binary_expression "iVar13 + 4" identifier + number_literal)) ;) (expression_statement "iVar3 = iVar3 + 1;" (assignment_expression "iVar3 = iVar3 + 1" identifier = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*piVar9 != 0)" ( (binary_expression "*piVar9 != 0" (pointer_expression "*piVar9" * identifier) != number_literal) )) ;) (if_statement "if (pwStack_1f0 != (wchar_t *)0x0) {\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }" if (parenthesized_expression "(pwStack_1f0 != (wchar_t *)0x0)" ( (binary_expression "pwStack_1f0 != (wchar_t *)0x0" identifier != (cast_expression "(wchar_t *)0x0" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;\n      }" { (labeled_statement "LAB_000ddbf8:\n        pwStack_1f0[iVar12] = 0;" statement_identifier : (expression_statement "pwStack_1f0[iVar12] = 0;" (assignment_expression "pwStack_1f0[iVar12] = 0" (subscript_expression "pwStack_1f0[iVar12]" identifier [ identifier ]) = number_literal) ;)) })) (labeled_statement "LAB_000ddc04:\n      uStack_1ec = 0;" statement_identifier : (expression_statement "uStack_1ec = 0;" (assignment_expression "uStack_1ec = 0" identifier = number_literal) ;)) (expression_statement "uStack_1e8 = 0;" (assignment_expression "uStack_1e8 = 0" identifier = number_literal) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2);" (call_expression "(**(code **)(pcStack_1f8 + -0x5f9c))(pathname,&pwStack_1f0,iVar2)" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f9c))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f9c)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f9c)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f9c)" ( (binary_expression "pcStack_1f8 + -0x5f9c" identifier + number_literal) ))))) )) (argument_list "(pathname,&pwStack_1f0,iVar2)" ( identifier , (pointer_expression "&pwStack_1f0" & identifier) , identifier ))) ;) (expression_statement "pathname = (wchar_t *)((int)pathname + iVar2);" (assignment_expression "pathname = (wchar_t *)((int)pathname + iVar2)" identifier = (cast_expression "(wchar_t *)((int)pathname + iVar2)" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pathname + iVar2)" ( (binary_expression "(int)pathname + iVar2" (cast_expression "(int)pathname" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "*(uchar *)pathname = '\0';" (assignment_expression "*(uchar *)pathname = '\0'" (pointer_expression "*(uchar *)pathname" * (cast_expression "(uchar *)pathname" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f94))();" (call_expression "(**(code **)(pcStack_1f8 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f94)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f94)" ( (binary_expression "pcStack_1f8 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pwVar10 = pwStack_1f0;" (assignment_expression "pwVar10 = pwStack_1f0" identifier = identifier) ;) }))) }))) (if_statement "if (iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)) {\n    return **(int **)(pcStack_1f8 + -0x5fb4);\n  }" if (parenthesized_expression "(iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4))" ( (binary_expression "iStack_1e4 == **(int **)(pcStack_1f8 + -0x5fb4)" identifier == (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) )))))) )) (compound_statement "{\n    return **(int **)(pcStack_1f8 + -0x5fb4);\n  }" { (return_statement "return **(int **)(pcStack_1f8 + -0x5fb4);" return (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) ))))) ;) })) (expression_statement "pcVar18 = *(code **)(pcStack_1f8 + -0x6004);" (assignment_expression "pcVar18 = *(code **)(pcStack_1f8 + -0x6004)" identifier = (pointer_expression "*(code **)(pcStack_1f8 + -0x6004)" * (cast_expression "(code **)(pcStack_1f8 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x6004)" ( (binary_expression "pcStack_1f8 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar19 = glob_pattern_p;" (assignment_expression "pcVar19 = glob_pattern_p" identifier = identifier) ;) (expression_statement "(*pcVar18)();" (call_expression "(*pcVar18)()" (parenthesized_expression "(*pcVar18)" ( (pointer_expression "*pcVar18" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4);" (assignment_expression "uStack_214 = **(undefined4 **)(pcVar18 + 0x7a8f4)" identifier = (pointer_expression "**(undefined4 **)(pcVar18 + 0x7a8f4)" * (pointer_expression "*(undefined4 **)(pcVar18 + 0x7a8f4)" * (cast_expression "(undefined4 **)(pcVar18 + 0x7a8f4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x7a8f4)" ( (binary_expression "pcVar18 + 0x7a8f4" identifier + number_literal) )))))) ;) (expression_statement "pwStack_210 = pathname;" (assignment_expression "pwStack_210 = pathname" identifier = identifier) ;) (expression_statement "pcStack_20c = pcVar19;" (assignment_expression "pcStack_20c = pcVar19" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcVar18 + 0x7a848))();" (assignment_expression "iVar2 = (**(code **)(pcVar18 + 0x7a848))()" identifier = (call_expression "(**(code **)(pcVar18 + 0x7a848))()" (parenthesized_expression "(**(code **)(pcVar18 + 0x7a848))" ( (pointer_expression "**(code **)(pcVar18 + 0x7a848)" * (pointer_expression "*(code **)(pcVar18 + 0x7a848)" * (cast_expression "(code **)(pcVar18 + 0x7a848)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x7a848)" ( (binary_expression "pcVar18 + 0x7a848" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar2 != 1) {\n    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);\n    if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }\n    do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;\n    return iVar2;\n  }" if (parenthesized_expression "(iVar2 != 1)" ( (binary_expression "iVar2 != 1" identifier != number_literal) )) (compound_statement "{\n    sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);\n    if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }\n    do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);\n                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;\n    return iVar2;\n  }" { (expression_statement "sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10);" (assignment_expression "sVar8 = xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10)" identifier = (call_expression "xdupmbstowcs(&piStack_218,(char ***)0x0,(char *)pwVar10)" identifier (argument_list "(&piStack_218,(char ***)0x0,(char *)pwVar10)" ( (pointer_expression "&piStack_218" & identifier) , (cast_expression "(char ***)0x0" ( (type_descriptor "char ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal) , (cast_expression "(char *)pwVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (sVar8 == 0xffffffff) {\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }" if (parenthesized_expression "(sVar8 == 0xffffffff)" ( (binary_expression "sVar8 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n      internal_glob_pattern_p((uchar *)pwVar10);\n      iVar2 = FUN_000dddfc();\n      return iVar2;\n    }" { (expression_statement "internal_glob_pattern_p((uchar *)pwVar10);" (call_expression "internal_glob_pattern_p((uchar *)pwVar10)" identifier (argument_list "((uchar *)pwVar10)" ( (cast_expression "(uchar *)pwVar10" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "iVar2 = FUN_000dddfc();" (assignment_expression "iVar2 = FUN_000dddfc()" identifier = (call_expression "FUN_000dddfc()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (do_statement "do {\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    } while (0x3c < uVar7);" do (compound_statement "{\n      iVar2 = *piStack_218;\n      piStack_218 = piStack_218 + 1;\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }\n      uVar7 = iVar2 - 0x21;\n    }" { (expression_statement "iVar2 = *piStack_218;" (assignment_expression "iVar2 = *piStack_218" identifier = (pointer_expression "*piStack_218" * identifier)) ;) (expression_statement "piStack_218 = piStack_218 + 1;" (assignment_expression "piStack_218 = piStack_218 + 1" identifier = (binary_expression "piStack_218 + 1" identifier + number_literal)) ;) (if_statement "if (iVar2 == 0) {\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(pcVar18 + 0x7a914))();\n        return iVar2;\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar18 + 0x7a914))();" (assignment_expression "iVar2 = (**(code **)(pcVar18 + 0x7a914))()" identifier = (call_expression "(**(code **)(pcVar18 + 0x7a914))()" (parenthesized_expression "(**(code **)(pcVar18 + 0x7a914))" ( (pointer_expression "**(code **)(pcVar18 + 0x7a914)" * (pointer_expression "*(code **)(pcVar18 + 0x7a914)" * (cast_expression "(code **)(pcVar18 + 0x7a914)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x7a914)" ( (binary_expression "pcVar18 + 0x7a914" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "uVar7 = iVar2 - 0x21;" (assignment_expression "uVar7 = iVar2 - 0x21" identifier = (binary_expression "iVar2 - 0x21" identifier - number_literal)) ;) }) while (parenthesized_expression "(0x3c < uVar7)" ( (binary_expression "0x3c < uVar7" number_literal < identifier) )) ;) comment comment (expression_statement "iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()\n    ;" (assignment_expression "iVar2 = (*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()" identifier = (call_expression "(*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))()" (parenthesized_expression "(*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))))" ( (pointer_expression "*(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)))" * (parenthesized_expression "(pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)))" ( (binary_expression "pcVar18 +\n              (int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))" identifier + (cast_expression "(int)(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4))" ( (binary_expression "&UNK_000808a8 + *(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)" (pointer_expression "&UNK_000808a8" & identifier) + (pointer_expression "*(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)" * (cast_expression "(int *)(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4)" ( (binary_expression "*(int *)(pcVar18 + 0x78918) + -0x305c + uVar7 * 4" (binary_expression "*(int *)(pcVar18 + 0x78918) + -0x305c" (pointer_expression "*(int *)(pcVar18 + 0x78918)" * (cast_expression "(int *)(pcVar18 + 0x78918)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 0x78918)" ( (binary_expression "pcVar18 + 0x78918" identifier + number_literal) )))) + number_literal) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) )))) ))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "internal_glob_pattern_p((uchar *)pwVar10);" (call_expression "internal_glob_pattern_p((uchar *)pwVar10)" identifier (argument_list "((uchar *)pwVar10)" ( (cast_expression "(uchar *)pwVar10" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "iVar2 = FUN_000dddfc();" (assignment_expression "iVar2 = FUN_000dddfc()" identifier = (call_expression "FUN_000dddfc()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })))
(translation_unit "int ******* FUN_000dd618(int *******param_1,uint param_2)\n\n{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}\n\n" (function_definition "int ******* FUN_000dd618(int *******param_1,uint param_2)\n\n{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" primitive_type (pointer_declarator "******* FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "****** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "***** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "**** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "*** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "** FUN_000dd618(int *******param_1,uint param_2)" * (pointer_declarator "* FUN_000dd618(int *******param_1,uint param_2)" * (function_declarator "FUN_000dd618(int *******param_1,uint param_2)" identifier (parameter_list "(int *******param_1,uint param_2)" ( (parameter_declaration "int *******param_1" primitive_type (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 "uint param_2" type_identifier identifier) )))))))))) (compound_statement "{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int *******pppppppiVar4;" primitive_type (pointer_declarator "*******pppppppiVar4" * (pointer_declarator "******pppppppiVar4" * (pointer_declarator "*****pppppppiVar4" * (pointer_declarator "****pppppppiVar4" * (pointer_declarator "***pppppppiVar4" * (pointer_declarator "**pppppppiVar4" * (pointer_declarator "*pppppppiVar4" * identifier))))))) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int *******pppppppiVar6;" primitive_type (pointer_declarator "*******pppppppiVar6" * (pointer_declarator "******pppppppiVar6" * (pointer_declarator "*****pppppppiVar6" * (pointer_declarator "****pppppppiVar6" * (pointer_declarator "***pppppppiVar6" * (pointer_declarator "**pppppppiVar6" * (pointer_declarator "*pppppppiVar6" * identifier))))))) ;) (declaration "int *******pppppppiVar7;" primitive_type (pointer_declarator "*******pppppppiVar7" * (pointer_declarator "******pppppppiVar7" * (pointer_declarator "*****pppppppiVar7" * (pointer_declarator "****pppppppiVar7" * (pointer_declarator "***pppppppiVar7" * (pointer_declarator "**pppppppiVar7" * (pointer_declarator "*pppppppiVar7" * identifier))))))) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "int ******ppppppiVar10;" primitive_type (pointer_declarator "******ppppppiVar10" * (pointer_declarator "*****ppppppiVar10" * (pointer_declarator "****ppppppiVar10" * (pointer_declarator "***ppppppiVar10" * (pointer_declarator "**ppppppiVar10" * (pointer_declarator "*ppppppiVar10" * identifier)))))) ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "int *piVar15;" primitive_type (pointer_declarator "*piVar15" * identifier) ;) (declaration "int ******ppppppiVar16;" primitive_type (pointer_declarator "******ppppppiVar16" * (pointer_declarator "*****ppppppiVar16" * (pointer_declarator "****ppppppiVar16" * (pointer_declarator "***ppppppiVar16" * (pointer_declarator "**ppppppiVar16" * (pointer_declarator "*ppppppiVar16" * identifier)))))) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "int ******ppppppiVar19;" primitive_type (pointer_declarator "******ppppppiVar19" * (pointer_declarator "*****ppppppiVar19" * (pointer_declarator "****ppppppiVar19" * (pointer_declarator "***ppppppiVar19" * (pointer_declarator "**ppppppiVar19" * (pointer_declarator "*ppppppiVar19" * identifier)))))) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "int ******ppppppiVar21;" primitive_type (pointer_declarator "******ppppppiVar21" * (pointer_declarator "*****ppppppiVar21" * (pointer_declarator "****ppppppiVar21" * (pointer_declarator "***ppppppiVar21" * (pointer_declarator "**ppppppiVar21" * (pointer_declarator "*ppppppiVar21" * identifier)))))) ;) (declaration "int *******pppppppiVar22;" primitive_type (pointer_declarator "*******pppppppiVar22" * (pointer_declarator "******pppppppiVar22" * (pointer_declarator "*****pppppppiVar22" * (pointer_declarator "****pppppppiVar22" * (pointer_declarator "***pppppppiVar22" * (pointer_declarator "**pppppppiVar22" * (pointer_declarator "*pppppppiVar22" * identifier))))))) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "int *******__quote;" primitive_type (pointer_declarator "*******__quote" * (pointer_declarator "******__quote" * (pointer_declarator "*****__quote" * (pointer_declarator "****__quote" * (pointer_declarator "***__quote" * (pointer_declarator "**__quote" * (pointer_declarator "*__quote" * identifier))))))) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int *******pppppppiVar25;" primitive_type (pointer_declarator "*******pppppppiVar25" * (pointer_declarator "******pppppppiVar25" * (pointer_declarator "*****pppppppiVar25" * (pointer_declarator "****pppppppiVar25" * (pointer_declarator "***pppppppiVar25" * (pointer_declarator "**pppppppiVar25" * (pointer_declarator "*pppppppiVar25" * identifier))))))) ;) (declaration "int *******unaff_s2;" primitive_type (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 "char *pcVar26;" primitive_type (pointer_declarator "*pcVar26" * identifier) ;) (declaration "int *******unaff_s3;" primitive_type (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 "int *******pppppppiVar27;" primitive_type (pointer_declarator "*******pppppppiVar27" * (pointer_declarator "******pppppppiVar27" * (pointer_declarator "*****pppppppiVar27" * (pointer_declarator "****pppppppiVar27" * (pointer_declarator "***pppppppiVar27" * (pointer_declarator "**pppppppiVar27" * (pointer_declarator "*pppppppiVar27" * identifier))))))) ;) (declaration "int *******unaff_s4;" primitive_type (pointer_declarator "*******unaff_s4" * (pointer_declarator "******unaff_s4" * (pointer_declarator "*****unaff_s4" * (pointer_declarator "****unaff_s4" * (pointer_declarator "***unaff_s4" * (pointer_declarator "**unaff_s4" * (pointer_declarator "*unaff_s4" * identifier))))))) ;) (declaration "int *******unaff_s5;" primitive_type (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 "int *******pppppppiVar28;" primitive_type (pointer_declarator "*******pppppppiVar28" * (pointer_declarator "******pppppppiVar28" * (pointer_declarator "*****pppppppiVar28" * (pointer_declarator "****pppppppiVar28" * (pointer_declarator "***pppppppiVar28" * (pointer_declarator "**pppppppiVar28" * (pointer_declarator "*pppppppiVar28" * identifier))))))) ;) (declaration "char *pcVar29;" primitive_type (pointer_declarator "*pcVar29" * identifier) ;) (declaration "int *******unaff_s6;" primitive_type (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 "uint uVar30;" type_identifier identifier ;) (declaration "undefined4 *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "int *******unaff_s7;" primitive_type (pointer_declarator "*******unaff_s7" * (pointer_declarator "******unaff_s7" * (pointer_declarator "*****unaff_s7" * (pointer_declarator "****unaff_s7" * (pointer_declarator "***unaff_s7" * (pointer_declarator "**unaff_s7" * (pointer_declarator "*unaff_s7" * identifier))))))) ;) (declaration "undefined *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "code *pcVar33;" type_identifier (pointer_declarator "*pcVar33" * identifier) ;) (declaration "undefined1 *puVar34;" type_identifier (pointer_declarator "*puVar34" * identifier) ;) (declaration "int ******unaff_s8;" primitive_type (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 "code *pcVar35;" type_identifier (pointer_declarator "*pcVar35" * identifier) ;) (declaration "undefined1 auStack_360 [8];" type_identifier (array_declarator "auStack_360 [8]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_358 [8];" type_identifier (array_declarator "auStack_358 [8]" identifier [ number_literal ]) ;) (declaration "int ******ppppppiStack_350;" primitive_type (pointer_declarator "******ppppppiStack_350" * (pointer_declarator "*****ppppppiStack_350" * (pointer_declarator "****ppppppiStack_350" * (pointer_declarator "***ppppppiStack_350" * (pointer_declarator "**ppppppiStack_350" * (pointer_declarator "*ppppppiStack_350" * identifier)))))) ;) (declaration "undefined1 *puStack_34c;" type_identifier (pointer_declarator "*puStack_34c" * identifier) ;) (declaration "code *pcStack_348;" type_identifier (pointer_declarator "*pcStack_348" * identifier) ;) (declaration "int *******pppppppiStack_340;" primitive_type (pointer_declarator "*******pppppppiStack_340" * (pointer_declarator "******pppppppiStack_340" * (pointer_declarator "*****pppppppiStack_340" * (pointer_declarator "****pppppppiStack_340" * (pointer_declarator "***pppppppiStack_340" * (pointer_declarator "**pppppppiStack_340" * (pointer_declarator "*pppppppiStack_340" * identifier))))))) ;) (declaration "uint uStack_33c;" type_identifier identifier ;) (declaration "uint uStack_338;" type_identifier identifier ;) (declaration "code *pcStack_334;" type_identifier (pointer_declarator "*pcStack_334" * identifier) ;) (declaration "uint uStack_330;" type_identifier identifier ;) (declaration "int iStack_32c;" primitive_type identifier ;) (declaration "undefined4 uStack_328;" type_identifier identifier ;) (declaration "int *******pppppppiStack_324;" primitive_type (pointer_declarator "*******pppppppiStack_324" * (pointer_declarator "******pppppppiStack_324" * (pointer_declarator "*****pppppppiStack_324" * (pointer_declarator "****pppppppiStack_324" * (pointer_declarator "***pppppppiStack_324" * (pointer_declarator "**pppppppiStack_324" * (pointer_declarator "*pppppppiStack_324" * identifier))))))) ;) (declaration "uint uStack_320;" type_identifier identifier ;) (declaration "code *pcStack_31c;" type_identifier (pointer_declarator "*pcStack_31c" * identifier) ;) (declaration "int iStack_318;" primitive_type identifier ;) (declaration "int iStack_314;" primitive_type identifier ;) (declaration "int *******pppppppiStack_310;" primitive_type (pointer_declarator "*******pppppppiStack_310" * (pointer_declarator "******pppppppiStack_310" * (pointer_declarator "*****pppppppiStack_310" * (pointer_declarator "****pppppppiStack_310" * (pointer_declarator "***pppppppiStack_310" * (pointer_declarator "**pppppppiStack_310" * (pointer_declarator "*pppppppiStack_310" * identifier))))))) ;) (declaration "uint uStack_30c;" type_identifier identifier ;) (declaration "int iStack_308;" primitive_type identifier ;) (declaration "int *******pppppppiStack_304;" primitive_type (pointer_declarator "*******pppppppiStack_304" * (pointer_declarator "******pppppppiStack_304" * (pointer_declarator "*****pppppppiStack_304" * (pointer_declarator "****pppppppiStack_304" * (pointer_declarator "***pppppppiStack_304" * (pointer_declarator "**pppppppiStack_304" * (pointer_declarator "*pppppppiStack_304" * identifier))))))) ;) (declaration "undefined1 auStack_300 [164];" type_identifier (array_declarator "auStack_300 [164]" identifier [ number_literal ]) ;) (declaration "char *pcStack_25c;" primitive_type (pointer_declarator "*pcStack_25c" * identifier) ;) (declaration "int *******pppppppiStack_258;" primitive_type (pointer_declarator "*******pppppppiStack_258" * (pointer_declarator "******pppppppiStack_258" * (pointer_declarator "*****pppppppiStack_258" * (pointer_declarator "****pppppppiStack_258" * (pointer_declarator "***pppppppiStack_258" * (pointer_declarator "**pppppppiStack_258" * (pointer_declarator "*pppppppiStack_258" * identifier))))))) ;) (declaration "int *******pppppppiStack_254;" primitive_type (pointer_declarator "*******pppppppiStack_254" * (pointer_declarator "******pppppppiStack_254" * (pointer_declarator "*****pppppppiStack_254" * (pointer_declarator "****pppppppiStack_254" * (pointer_declarator "***pppppppiStack_254" * (pointer_declarator "**pppppppiStack_254" * (pointer_declarator "*pppppppiStack_254" * identifier))))))) ;) (declaration "int *******pppppppiStack_250;" primitive_type (pointer_declarator "*******pppppppiStack_250" * (pointer_declarator "******pppppppiStack_250" * (pointer_declarator "*****pppppppiStack_250" * (pointer_declarator "****pppppppiStack_250" * (pointer_declarator "***pppppppiStack_250" * (pointer_declarator "**pppppppiStack_250" * (pointer_declarator "*pppppppiStack_250" * identifier))))))) ;) (declaration "int *******pppppppiStack_24c;" primitive_type (pointer_declarator "*******pppppppiStack_24c" * (pointer_declarator "******pppppppiStack_24c" * (pointer_declarator "*****pppppppiStack_24c" * (pointer_declarator "****pppppppiStack_24c" * (pointer_declarator "***pppppppiStack_24c" * (pointer_declarator "**pppppppiStack_24c" * (pointer_declarator "*pppppppiStack_24c" * identifier))))))) ;) (declaration "int *******pppppppiStack_248;" primitive_type (pointer_declarator "*******pppppppiStack_248" * (pointer_declarator "******pppppppiStack_248" * (pointer_declarator "*****pppppppiStack_248" * (pointer_declarator "****pppppppiStack_248" * (pointer_declarator "***pppppppiStack_248" * (pointer_declarator "**pppppppiStack_248" * (pointer_declarator "*pppppppiStack_248" * identifier))))))) ;) (declaration "int *******pppppppiStack_244;" primitive_type (pointer_declarator "*******pppppppiStack_244" * (pointer_declarator "******pppppppiStack_244" * (pointer_declarator "*****pppppppiStack_244" * (pointer_declarator "****pppppppiStack_244" * (pointer_declarator "***pppppppiStack_244" * (pointer_declarator "**pppppppiStack_244" * (pointer_declarator "*pppppppiStack_244" * identifier))))))) ;) (declaration "int *******pppppppiStack_240;" primitive_type (pointer_declarator "*******pppppppiStack_240" * (pointer_declarator "******pppppppiStack_240" * (pointer_declarator "*****pppppppiStack_240" * (pointer_declarator "****pppppppiStack_240" * (pointer_declarator "***pppppppiStack_240" * (pointer_declarator "**pppppppiStack_240" * (pointer_declarator "*pppppppiStack_240" * identifier))))))) ;) (declaration "int *******pppppppiStack_23c;" primitive_type (pointer_declarator "*******pppppppiStack_23c" * (pointer_declarator "******pppppppiStack_23c" * (pointer_declarator "*****pppppppiStack_23c" * (pointer_declarator "****pppppppiStack_23c" * (pointer_declarator "***pppppppiStack_23c" * (pointer_declarator "**pppppppiStack_23c" * (pointer_declarator "*pppppppiStack_23c" * identifier))))))) ;) (declaration "int ******ppppppiStack_238;" primitive_type (pointer_declarator "******ppppppiStack_238" * (pointer_declarator "*****ppppppiStack_238" * (pointer_declarator "****ppppppiStack_238" * (pointer_declarator "***ppppppiStack_238" * (pointer_declarator "**ppppppiStack_238" * (pointer_declarator "*ppppppiStack_238" * identifier)))))) ;) (declaration "code *pcStack_234;" type_identifier (pointer_declarator "*pcStack_234" * identifier) ;) (declaration "code *pcStack_220;" type_identifier (pointer_declarator "*pcStack_220" * identifier) ;) (declaration "int *******pppppppiStack_218;" primitive_type (pointer_declarator "*******pppppppiStack_218" * (pointer_declarator "******pppppppiStack_218" * (pointer_declarator "*****pppppppiStack_218" * (pointer_declarator "****pppppppiStack_218" * (pointer_declarator "***pppppppiStack_218" * (pointer_declarator "**pppppppiStack_218" * (pointer_declarator "*pppppppiStack_218" * identifier))))))) ;) (declaration "int *******pppppppiStack_214;" primitive_type (pointer_declarator "*******pppppppiStack_214" * (pointer_declarator "******pppppppiStack_214" * (pointer_declarator "*****pppppppiStack_214" * (pointer_declarator "****pppppppiStack_214" * (pointer_declarator "***pppppppiStack_214" * (pointer_declarator "**pppppppiStack_214" * (pointer_declarator "*pppppppiStack_214" * identifier))))))) ;) (declaration "int *******pppppppiStack_210;" primitive_type (pointer_declarator "*******pppppppiStack_210" * (pointer_declarator "******pppppppiStack_210" * (pointer_declarator "*****pppppppiStack_210" * (pointer_declarator "****pppppppiStack_210" * (pointer_declarator "***pppppppiStack_210" * (pointer_declarator "**pppppppiStack_210" * (pointer_declarator "*pppppppiStack_210" * identifier))))))) ;) (declaration "code *pcStack_20c;" type_identifier (pointer_declarator "*pcStack_20c" * identifier) ;) (declaration "code *pcStack_1f8;" type_identifier (pointer_declarator "*pcStack_1f8" * identifier) ;) (declaration "int *******pppppppiStack_1f0;" primitive_type (pointer_declarator "*******pppppppiStack_1f0" * (pointer_declarator "******pppppppiStack_1f0" * (pointer_declarator "*****pppppppiStack_1f0" * (pointer_declarator "****pppppppiStack_1f0" * (pointer_declarator "***pppppppiStack_1f0" * (pointer_declarator "**pppppppiStack_1f0" * (pointer_declarator "*pppppppiStack_1f0" * identifier))))))) ;) (declaration "undefined4 uStack_1ec;" type_identifier identifier ;) (declaration "undefined4 uStack_1e8;" type_identifier identifier ;) (declaration "int *******pppppppiStack_1e4;" primitive_type (pointer_declarator "*******pppppppiStack_1e4" * (pointer_declarator "******pppppppiStack_1e4" * (pointer_declarator "*****pppppppiStack_1e4" * (pointer_declarator "****pppppppiStack_1e4" * (pointer_declarator "***pppppppiStack_1e4" * (pointer_declarator "**pppppppiStack_1e4" * (pointer_declarator "*pppppppiStack_1e4" * identifier))))))) ;) (declaration "int *******pppppppiStack_1e0;" primitive_type (pointer_declarator "*******pppppppiStack_1e0" * (pointer_declarator "******pppppppiStack_1e0" * (pointer_declarator "*****pppppppiStack_1e0" * (pointer_declarator "****pppppppiStack_1e0" * (pointer_declarator "***pppppppiStack_1e0" * (pointer_declarator "**pppppppiStack_1e0" * (pointer_declarator "*pppppppiStack_1e0" * identifier))))))) ;) (declaration "int *******pppppppiStack_1dc;" primitive_type (pointer_declarator "*******pppppppiStack_1dc" * (pointer_declarator "******pppppppiStack_1dc" * (pointer_declarator "*****pppppppiStack_1dc" * (pointer_declarator "****pppppppiStack_1dc" * (pointer_declarator "***pppppppiStack_1dc" * (pointer_declarator "**pppppppiStack_1dc" * (pointer_declarator "*pppppppiStack_1dc" * identifier))))))) ;) (declaration "int *******pppppppiStack_1d8;" primitive_type (pointer_declarator "*******pppppppiStack_1d8" * (pointer_declarator "******pppppppiStack_1d8" * (pointer_declarator "*****pppppppiStack_1d8" * (pointer_declarator "****pppppppiStack_1d8" * (pointer_declarator "***pppppppiStack_1d8" * (pointer_declarator "**pppppppiStack_1d8" * (pointer_declarator "*pppppppiStack_1d8" * identifier))))))) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "undefined *puStack_1c0;" type_identifier (pointer_declarator "*puStack_1c0" * identifier) ;) (declaration "int *******pppppppiStack_1b4;" primitive_type (pointer_declarator "*******pppppppiStack_1b4" * (pointer_declarator "******pppppppiStack_1b4" * (pointer_declarator "*****pppppppiStack_1b4" * (pointer_declarator "****pppppppiStack_1b4" * (pointer_declarator "***pppppppiStack_1b4" * (pointer_declarator "**pppppppiStack_1b4" * (pointer_declarator "*pppppppiStack_1b4" * identifier))))))) ;) (declaration "int iStack_1b0;" primitive_type identifier ;) (declaration "int iStack_1ac;" primitive_type identifier ;) (declaration "int iStack_1a8;" primitive_type identifier ;) (declaration "uint uStack_1a4;" type_identifier identifier ;) (declaration "int *******pppppppiStack_1a0;" primitive_type (pointer_declarator "*******pppppppiStack_1a0" * (pointer_declarator "******pppppppiStack_1a0" * (pointer_declarator "*****pppppppiStack_1a0" * (pointer_declarator "****pppppppiStack_1a0" * (pointer_declarator "***pppppppiStack_1a0" * (pointer_declarator "**pppppppiStack_1a0" * (pointer_declarator "*pppppppiStack_1a0" * identifier))))))) ;) (declaration "int *******pppppppiStack_19c;" primitive_type (pointer_declarator "*******pppppppiStack_19c" * (pointer_declarator "******pppppppiStack_19c" * (pointer_declarator "*****pppppppiStack_19c" * (pointer_declarator "****pppppppiStack_19c" * (pointer_declarator "***pppppppiStack_19c" * (pointer_declarator "**pppppppiStack_19c" * (pointer_declarator "*pppppppiStack_19c" * identifier))))))) ;) (declaration "int ******appppppiStack_198 [6];" primitive_type (pointer_declarator "******appppppiStack_198 [6]" * (pointer_declarator "*****appppppiStack_198 [6]" * (pointer_declarator "****appppppiStack_198 [6]" * (pointer_declarator "***appppppiStack_198 [6]" * (pointer_declarator "**appppppiStack_198 [6]" * (pointer_declarator "*appppppiStack_198 [6]" * (array_declarator "appppppiStack_198 [6]" identifier [ number_literal ]))))))) ;) (declaration "uint uStack_180;" type_identifier identifier ;) (declaration "int *******pppppppiStack_f4;" primitive_type (pointer_declarator "*******pppppppiStack_f4" * (pointer_declarator "******pppppppiStack_f4" * (pointer_declarator "*****pppppppiStack_f4" * (pointer_declarator "****pppppppiStack_f4" * (pointer_declarator "***pppppppiStack_f4" * (pointer_declarator "**pppppppiStack_f4" * (pointer_declarator "*pppppppiStack_f4" * identifier))))))) ;) (declaration "int ******appppppiStack_b0 [6];" primitive_type (pointer_declarator "******appppppiStack_b0 [6]" * (pointer_declarator "*****appppppiStack_b0 [6]" * (pointer_declarator "****appppppiStack_b0 [6]" * (pointer_declarator "***appppppiStack_b0 [6]" * (pointer_declarator "**appppppiStack_b0 [6]" * (pointer_declarator "*appppppiStack_b0 [6]" * (array_declarator "appppppiStack_b0 [6]" identifier [ number_literal ]))))))) ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "int local_c;" primitive_type identifier ;) (expression_statement "local_c = *(int *)PTR___stack_chk_guard_0015858c;" (assignment_expression "local_c = *(int *)PTR___stack_chk_guard_0015858c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppppppiVar7 = appppppiStack_b0;" (assignment_expression "pppppppiVar7 = appppppiStack_b0" identifier = identifier) ;) (if_statement "if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" if (parenthesized_expression "((param_2 & 0x10) == 0)" ( (binary_expression "(param_2 & 0x10) == 0" (parenthesized_expression "(param_2 & 0x10)" ( (binary_expression "param_2 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___xstat64_001582e8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___xstat64_001582e8)(3)" identifier = (call_expression "(*(code *)PTR___xstat64_001582e8)(3)" (parenthesized_expression "(*(code *)PTR___xstat64_001582e8)" ( (pointer_expression "*(code *)PTR___xstat64_001582e8" * (cast_expression "(code *)PTR___xstat64_001582e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }) (else_clause "else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" else (compound_statement "{\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" { (expression_statement "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3)" identifier = (call_expression "(*(code *)PTR___lxstat64_001582c8)(3)" (parenthesized_expression "(*(code *)PTR___lxstat64_001582c8)" ( (pointer_expression "*(code *)PTR___lxstat64_001582c8" * (cast_expression "(code *)PTR___lxstat64_001582c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) }))) (if_statement "if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n    pppppppiVar4 = (int *******)0xffffffff;\n  }" { (expression_statement "pppppppiVar4 = (int *******)0xffffffff;" (assignment_expression "pppppppiVar4 = (int *******)0xffffffff" identifier = (cast_expression "(int *******)0xffffffff" ( (type_descriptor "int *******" primitive_type (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 if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" else (if_statement "if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" if (parenthesized_expression "((local_98 & 0xf000) == 0xa000)" ( (binary_expression "(local_98 & 0xf000) == 0xa000" (parenthesized_expression "(local_98 & 0xf000)" ( (binary_expression "local_98 & 0xf000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }" { (expression_statement "pppppppiVar4 = (int *******)&SUB_fffffffe;" (assignment_expression "pppppppiVar4 = (int *******)&SUB_fffffffe" identifier = (cast_expression "(int *******)&SUB_fffffffe" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&SUB_fffffffe" & identifier))) ;) }) (else_clause "else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" else (compound_statement "{\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" { (expression_statement "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);" (assignment_expression "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000)" identifier = (cast_expression "(int *******)-(uint)((local_98 & 0xf000) != 0x4000)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(uint)((local_98 & 0xf000) != 0x4000)" - (call_expression "(uint)((local_98 & 0xf000) != 0x4000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((local_98 & 0xf000) != 0x4000)" ( (binary_expression "(local_98 & 0xf000) != 0x4000" (parenthesized_expression "(local_98 & 0xf000)" ( (binary_expression "local_98 & 0xf000" identifier & number_literal) )) != number_literal) )))))) ;) }))))) (if_statement "if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }" if (parenthesized_expression "(local_c == *(int *)PTR___stack_chk_guard_0015858c)" ( (binary_expression "local_c == *(int *)PTR___stack_chk_guard_0015858c" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" * (cast_expression "(int *)PTR___stack_chk_guard_0015858c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pppppppiVar4;\n  }" { (return_statement "return pppppppiVar4;" return identifier ;) })) (expression_statement "iVar3 = local_c;" (assignment_expression "iVar3 = local_c" identifier = identifier) ;) (expression_statement "puVar32 = PTR___stack_chk_fail_0015853c;" (assignment_expression "puVar32 = PTR___stack_chk_fail_0015853c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0015853c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015853c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015853c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0015853c" * (cast_expression "(code *)PTR___stack_chk_fail_0015853c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_1c0 = puVar32 + 0x80e64;" (assignment_expression "puStack_1c0 = puVar32 + 0x80e64" identifier = (binary_expression "puVar32 + 0x80e64" identifier + number_literal)) ;) (expression_statement "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);" (assignment_expression "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" identifier = (cast_expression "(int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(puVar32 + 0x7aeb0)" * (pointer_expression "*(undefined4 **)(puVar32 + 0x7aeb0)" * (cast_expression "(undefined4 **)(puVar32 + 0x7aeb0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + 0x7aeb0)" ( (binary_expression "puVar32 + 0x7aeb0" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiVar25 = param_1;" (assignment_expression "pppppppiVar25 = param_1" identifier = identifier) ;) (expression_statement "iStack_1b0 = iVar3;" (assignment_expression "iStack_1b0 = iVar3" identifier = identifier) ;) (expression_statement "pppppppiStack_19c = param_1;" (assignment_expression "pppppppiStack_19c = param_1" identifier = identifier) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))()" identifier = (cast_expression "(int *******)(**(code **)(puVar32 + 0x7ad68))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puVar32 + 0x7ad68))()" (parenthesized_expression "(**(code **)(puVar32 + 0x7ad68))" ( (pointer_expression "**(code **)(puVar32 + 0x7ad68)" * (pointer_expression "*(code **)(puVar32 + 0x7ad68)" * (cast_expression "(code **)(puVar32 + 0x7ad68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + 0x7ad68)" ( (binary_expression "puVar32 + 0x7ad68" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }" { (expression_statement "pppppppiVar6 = param_1;" (assignment_expression "pppppppiVar6 = param_1" identifier = identifier) ;) (expression_statement "pppppppiVar4 = unaff_s7;" (assignment_expression "pppppppiVar4 = unaff_s7" identifier = identifier) ;) (if_statement "if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" if (parenthesized_expression "(((uint)pppppppiVar7 & 1) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 1) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 1)" ( (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }" { (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar7 = (int *******)0x0;" (assignment_expression "pppppppiVar7 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) }) (else_clause "else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" else (compound_statement "{\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" { (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" { (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) }) (else_clause "else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" else (compound_statement "{\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" { (expression_statement "unaff_s2 = (int *******)0x4000;" (assignment_expression "unaff_s2 = (int *******)0x4000" identifier = (cast_expression "(int *******)0x4000" ( (type_descriptor "int *******" primitive_type (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 = (int *******)0x2f;" (assignment_expression "unaff_s3 = (int *******)0x2f" identifier = (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        }" { (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,ppppppiVar21,appppppiStack_198)" ( number_literal , identifier , identifier )))) ;) (expression_statement "pppppppiVar6 = appppppiStack_198;" (assignment_expression "pppppppiVar6 = appppppiStack_198" identifier = identifier) ;) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" if (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" ( (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" ( (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" ( (binary_expression "uStack_180 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" { (expression_statement "unaff_s5 = (int *******)*param_1;" (assignment_expression "unaff_s5 = (int *******)*param_1" identifier = (cast_expression "(int *******)*param_1" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*param_1" * identifier))) ;) (expression_statement "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);" (assignment_expression "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60fc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))))) ;) (expression_statement "pppppppiVar22 = (int *******)((int)unaff_s4 + 2);" (assignment_expression "pppppppiVar22 = (int *******)((int)unaff_s4 + 2)" identifier = (cast_expression "(int *******)((int)unaff_s4 + 2)" ( (type_descriptor "int *******" primitive_type (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_s4 + 2)" ( (binary_expression "(int)unaff_s4 + 2" (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x6098))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6098))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6098)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6098)" * (cast_expression "(code **)(puStack_1c0 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6098)" ( (binary_expression "puStack_1c0 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))))) ;) (expression_statement "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) (if_statement "if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;" if (parenthesized_expression "(pppppppiStack_1a0 == (int *******)0x0)" ( (binary_expression "pppppppiStack_1a0 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000dd804;" goto statement_identifier ;)) (expression_statement "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);" (assignment_expression "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" identifier = (cast_expression "(int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiStack_1a0 + (int)unaff_s4)" ( (binary_expression "(int)pppppppiStack_1a0 + (int)unaff_s4" (cast_expression "(int)pppppppiStack_1a0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(undefined1 *)unaff_s4 = 0x2f;" (assignment_expression "*(undefined1 *)unaff_s4 = 0x2f" (pointer_expression "*(undefined1 *)unaff_s4" * (cast_expression "(undefined1 *)unaff_s4" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined1 *)((int)unaff_s4 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)unaff_s4 + 1) = 0" (pointer_expression "*(undefined1 *)((int)unaff_s4 + 1)" * (cast_expression "(undefined1 *)((int)unaff_s4 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s4 + 1)" ( (binary_expression "(int)unaff_s4 + 1" (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*param_1 = (int ******)pppppppiStack_1a0;" (assignment_expression "*param_1 = (int ******)pppppppiStack_1a0" (pointer_expression "*param_1" * identifier) = (cast_expression "(int ******)pppppppiStack_1a0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) })) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" identifier = identifier) ;) }))) }))) }) (else_clause "else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" else (compound_statement "{\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" { (expression_statement "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);" (assignment_expression "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" identifier = (cast_expression "(int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" * (cast_expression "(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar4 + iStack_1b0 + -1)" ( (binary_expression "(int)pppppppiVar4 + iStack_1b0 + -1" (binary_expression "(int)pppppppiVar4 + iStack_1b0" (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))))))) ;) (expression_statement "pppppppiVar6 = (int *******)*pppppppiStack_19c;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiStack_19c" identifier = (cast_expression "(int *******)*pppppppiStack_19c" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_19c" * identifier))) ;) (expression_statement "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);" (assignment_expression "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f)" identifier = (cast_expression "(int ******)(uint)(unaff_s6 != (int *******)0x2f)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(uint)(unaff_s6 != (int *******)0x2f)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(unaff_s6 != (int *******)0x2f)" ( (binary_expression "unaff_s6 != (int *******)0x2f" identifier != (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }" { (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))(4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" if (parenthesized_expression "(pppppppiStack_1a0 != (int *******)0x0)" ( (binary_expression "pppppppiStack_1a0 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" { (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" statement_identifier : (expression_statement "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" (assignment_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0" (pointer_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" * (cast_expression "(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiStack_1a0 + iVar3)" ( (binary_expression "(int)pppppppiStack_1a0 + iVar3" (cast_expression "(int)pppppppiStack_1a0" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = number_literal) ;)) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (if_statement "if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" if (parenthesized_expression "(*pppppppiStack_19c != (int ******)0x0)" ( (binary_expression "*pppppppiStack_19c != (int ******)0x0" (pointer_expression "*pppppppiStack_19c" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" { (expression_statement "pppppppiVar22 = pppppppiStack_19c + 1;" (assignment_expression "pppppppiVar22 = pppppppiStack_19c + 1" identifier = (binary_expression "pppppppiStack_19c + 1" identifier + number_literal)) ;) (do_statement "do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          }" { (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiVar7 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar7 = pppppppiVar22 + 1" identifier = (binary_expression "pppppppiVar22 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = *pppppppiVar22;" (assignment_expression "ppppppiVar21 = *pppppppiVar22" identifier = (pointer_expression "*pppppppiVar22" * identifier)) ;) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "pppppppiVar22 = pppppppiVar7;" (assignment_expression "pppppppiVar22 = pppppppiVar7" identifier = identifier) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_19c)" ( identifier ))) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) })) }) (else_clause "else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" else (compound_statement "{\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" { (expression_statement "unaff_s4 = pppppppiStack_19c + 1;" (assignment_expression "unaff_s4 = pppppppiStack_19c + 1" identifier = (binary_expression "pppppppiStack_19c + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar25 = unaff_s4;" (assignment_expression "pppppppiVar25 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);" do (compound_statement "{\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      }" { (expression_statement "pppppppiVar27 = pppppppiVar22;" (assignment_expression "pppppppiVar27 = pppppppiVar22" identifier = identifier) ;) (expression_statement "ppppppiVar21 = *pppppppiVar25;" (assignment_expression "ppppppiVar21 = *pppppppiVar25" identifier = (pointer_expression "*pppppppiVar25" * identifier)) ;) (expression_statement "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);" (assignment_expression "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar27 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar27 + 1)" ( (binary_expression "(int)pppppppiVar27 + 1" (cast_expression "(int)pppppppiVar27" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiVar25 = pppppppiVar25 + 1;" (assignment_expression "pppppppiVar25 = pppppppiVar25 + 1" identifier = (binary_expression "pppppppiVar25 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (expression_statement "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);" (assignment_expression "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "((int)((int)pppppppiVar27 + 2) * 4)" ( (binary_expression "(int)((int)pppppppiVar27 + 2) * 4" (cast_expression "(int)((int)pppppppiVar27 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppiVar27 + 2)" ( (binary_expression "(int)pppppppiVar27 + 2" (cast_expression "(int)pppppppiVar27" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) * number_literal) ))))) ;) (expression_statement "pppppppiStack_1a0 = pppppppiVar27;" (assignment_expression "pppppppiStack_1a0 = pppppppiVar27" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" { (expression_statement "unaff_s3 = (int *******)0x0;" (assignment_expression "unaff_s3 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_1ac = (int)pppppppiVar4 + 3;" (assignment_expression "iStack_1ac = (int)pppppppiVar4 + 3" identifier = (binary_expression "(int)pppppppiVar4 + 3" (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;" (assignment_expression "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4" identifier = (binary_expression "(int)unaff_s8 + (int)pppppppiVar4" (cast_expression "(int)unaff_s8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uStack_1a4 = (uint)pppppppiVar7 & 1;" (assignment_expression "uStack_1a4 = (uint)pppppppiVar7 & 1" identifier = (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "unaff_s8 = (int ******)appppppiStack_198;" (assignment_expression "unaff_s8 = (int ******)appppppiStack_198" identifier = (cast_expression "(int ******)appppppiStack_198" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "unaff_s2 = pppppppiVar27;" (assignment_expression "unaff_s2 = pppppppiVar27" identifier = identifier) ;) (labeled_statement "LAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;" statement_identifier : (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;)) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" identifier = (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" ( (type_descriptor "int *******" primitive_type (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_1c0 + -0x60a4))(iStack_1ac + iVar3)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" * (cast_expression "(code **)(puStack_1c0 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60a4)" ( (binary_expression "puStack_1c0 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iStack_1ac + iVar3)" ( (binary_expression "iStack_1ac + iVar3" identifier + identifier) ))))) ;) (expression_statement "*unaff_s2 = (int ******)pppppppiVar7;" (assignment_expression "*unaff_s2 = (int ******)pppppppiVar7" (pointer_expression "*unaff_s2" * identifier) = (cast_expression "(int ******)pppppppiVar7" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiStack_1b4 = unaff_s2;" (assignment_expression "pppppppiStack_1b4 = unaff_s2" identifier = identifier) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 code_r0x000dd9a4;" goto statement_identifier ;)) (if_statement "if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" if (parenthesized_expression "(unaff_s3 != (int *******)0x0)" ( (binary_expression "unaff_s3 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" { (expression_statement "unaff_s3 = pppppppiVar27 + (int)unaff_s3;" (assignment_expression "unaff_s3 = pppppppiVar27 + (int)unaff_s3" identifier = (binary_expression "pppppppiVar27 + (int)unaff_s3" identifier + (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (do_statement "do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);" do (compound_statement "{\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          }" { (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*pppppppiVar27)" ( (pointer_expression "*pppppppiVar27" * identifier) ))) ;) (expression_statement "pppppppiVar27 = pppppppiVar27 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar27 + 1" identifier = (binary_expression "pppppppiVar27 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(unaff_s3 != pppppppiVar27)" ( (binary_expression "unaff_s3 != pppppppiVar27" identifier != identifier) )) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" * (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" * (cast_expression "(code **)(puStack_1c0 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5f94)" ( (binary_expression "puStack_1c0 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_1a0)" ( identifier ))) ;) (expression_statement "pppppppiStack_1a0 = (int *******)0x0;" (assignment_expression "pppppppiStack_1a0 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" identifier = identifier) ;) })) }))) }))) (labeled_statement "LAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" statement_identifier : (if_statement "if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" if (parenthesized_expression "(pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4))" ( (binary_expression "pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" identifier == (cast_expression "(int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(puStack_1c0 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(puStack_1c0 + -0x5fb4)" * (cast_expression "(undefined4 **)(puStack_1c0 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x5fb4)" ( (binary_expression "puStack_1c0 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiStack_1a0;\n  }" { (return_statement "return pppppppiStack_1a0;" return identifier ;) }))) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x6004)" identifier = (pointer_expression "*(code **)(puStack_1c0 + -0x6004)" * (cast_expression "(code **)(puStack_1c0 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6004)" ( (binary_expression "puStack_1c0 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = FUN_000ddacc;" (assignment_expression "pcVar35 = FUN_000ddacc" identifier = identifier) ;) (expression_statement "pppppppiVar25 = pppppppiStack_f4;" (assignment_expression "pppppppiVar25 = pppppppiStack_f4" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1f8 = pcVar33 + 0x80a74;" (assignment_expression "pcStack_1f8 = pcVar33 + 0x80a74" identifier = (binary_expression "pcVar33 + 0x80a74" identifier + number_literal)) ;) (expression_statement "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);" (assignment_expression "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0)" identifier = (cast_expression "(int *******)**(int **)(pcVar33 + 0x7aac0)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcVar33 + 0x7aac0)" * (pointer_expression "*(int **)(pcVar33 + 0x7aac0)" * (cast_expression "(int **)(pcVar33 + 0x7aac0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7aac0)" ( (binary_expression "pcVar33 + 0x7aac0" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiStack_1e0 = pppppppiVar7;" (assignment_expression "pppppppiStack_1e0 = pppppppiVar7" identifier = identifier) ;) (expression_statement "pppppppiStack_1dc = pppppppiVar6;" (assignment_expression "pppppppiStack_1dc = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiStack_1d8 = unaff_s2;" (assignment_expression "pppppppiStack_1d8 = unaff_s2" identifier = identifier) ;) (expression_statement "pcStack_1d4 = pcVar35;" (assignment_expression "pcStack_1d4 = pcVar35" identifier = identifier) ;) (expression_statement "uVar5 = (**(code **)(pcVar33 + 0x7aa14))();" (assignment_expression "uVar5 = (**(code **)(pcVar33 + 0x7aa14))()" identifier = (call_expression "(**(code **)(pcVar33 + 0x7aa14))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7aa14))" ( (pointer_expression "**(code **)(pcVar33 + 0x7aa14)" * (pointer_expression "*(code **)(pcVar33 + 0x7aa14)" * (cast_expression "(code **)(pcVar33 + 0x7aa14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7aa14)" ( (binary_expression "pcVar33 + 0x7aa14" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "pppppppiVar7 = pppppppiVar25;" (assignment_expression "pppppppiVar7 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" if (parenthesized_expression "(uVar5 < 2)" ( (binary_expression "uVar5 < 2" identifier < number_literal) )) (compound_statement "{\n    FUN_000dce8c();\n  }" { (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" else (compound_statement "{\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" { (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" identifier = (cast_expression "(int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_1f8 + -0x60fc))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x60fc)" * (cast_expression "(code **)(pcStack_1f8 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x60fc)" ( (binary_expression "pcStack_1f8 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" identifier = (call_expression "xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" identifier (argument_list "(&pppppppiStack_1f0,0,pppppppiVar25)" ( (pointer_expression "&pppppppiStack_1f0" & identifier) , number_literal , identifier )))) ;) (expression_statement "unaff_s2 = pppppppiStack_1f0;" (assignment_expression "unaff_s2 = pppppppiStack_1f0" identifier = identifier) ;) (if_statement "if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      FUN_000dce8c();\n    }" { (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" else (compound_statement "{\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" { (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" identifier = number_literal) ;) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);" do (compound_statement "{\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      }" { (if_statement "if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;" if (parenthesized_expression "(pppppppiStack_1f0 == (int *******)0x0)" ( (binary_expression "pppppppiStack_1f0 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddc04;" goto statement_identifier ;)) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;" if (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x0)" ( (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar3]" identifier [ identifier ]) == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000ddbf8;" goto statement_identifier ;)) (expression_statement "iVar17 = iVar3;" (assignment_expression "iVar17 = iVar3" identifier = identifier) ;) (expression_statement "iVar12 = iVar3 + 1;" (assignment_expression "iVar12 = iVar3 + 1" identifier = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" if (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x5c)" ( (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x5c" (subscript_expression "pppppppiStack_1f0[iVar3]" identifier [ identifier ]) == (cast_expression "(int ******)0x5c" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" { (expression_statement "iVar17 = iVar3 + 1;" (assignment_expression "iVar17 = iVar3 + 1" identifier = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (expression_statement "iVar12 = iVar3 + 2;" (assignment_expression "iVar12 = iVar3 + 2" identifier = (binary_expression "iVar3 + 2" identifier + number_literal)) ;) })) (expression_statement "iVar3 = iVar12;" (assignment_expression "iVar3 = iVar12" identifier = identifier) ;) (expression_statement "iVar23 = iVar23 + 1;" (assignment_expression "iVar23 = iVar23 + 1" identifier = (binary_expression "iVar23 + 1" identifier + number_literal)) ;) (expression_statement "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];" (assignment_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17]" (pointer_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24)" * (cast_expression "(int *******)((int)pppppppiStack_1f0 + iVar24)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiStack_1f0 + iVar24)" ( (binary_expression "(int)pppppppiStack_1f0 + iVar24" (cast_expression "(int)pppppppiStack_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (subscript_expression "pppppppiStack_1f0[iVar17]" identifier [ identifier ])) ;) (expression_statement "iVar24 = iVar24 + 4;" (assignment_expression "iVar24 = iVar24 + 4" identifier = (binary_expression "iVar24 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppiStack_1f0[iVar17] != (int ******)0x0)" ( (binary_expression "pppppppiStack_1f0[iVar17] != (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar17]" identifier [ identifier ]) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (if_statement "if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" if (parenthesized_expression "(pppppppiStack_1f0 != (int *******)0x0)" ( (binary_expression "pppppppiStack_1f0 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" { (labeled_statement "LAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;" statement_identifier : (expression_statement "pppppppiStack_1f0[iVar23] = (int ******)0x0;" (assignment_expression "pppppppiStack_1f0[iVar23] = (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar23]" identifier [ identifier ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;)) })) (labeled_statement "LAB_000ddc04:\n      uStack_1ec = 0;" statement_identifier : (expression_statement "uStack_1ec = 0;" (assignment_expression "uStack_1ec = 0" identifier = number_literal) ;)) (expression_statement "uStack_1e8 = 0;" (assignment_expression "uStack_1e8 = 0" identifier = number_literal) ;) (expression_statement "pppppppiVar22 = (int *******)&pppppppiStack_1f0;" (assignment_expression "pppppppiVar22 = (int *******)&pppppppiStack_1f0" identifier = (cast_expression "(int *******)&pppppppiStack_1f0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppppiStack_1f0" & identifier))) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);" (call_expression "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f9c))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f9c)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f9c)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f9c)" ( (binary_expression "pcStack_1f8 + -0x5f9c" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25,pppppppiVar22,pppppppiVar6)" ( identifier , identifier , identifier ))) ;) (expression_statement "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);" (assignment_expression "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" identifier = (cast_expression "(int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar25 + (int)pppppppiVar6)" ( (binary_expression "(int)pppppppiVar25 + (int)pppppppiVar6" (cast_expression "(int)pppppppiVar25" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(undefined1 *)pppppppiVar25 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar25 = 0" (pointer_expression "*(undefined1 *)pppppppiVar25" * (cast_expression "(undefined1 *)pppppppiVar25" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "pppppppiVar7 = pppppppiStack_1f0;" (assignment_expression "pppppppiVar7 = pppppppiStack_1f0" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f94))();" (call_expression "(**(code **)(pcStack_1f8 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_1f8 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_1f8 + -0x5f94)" * (cast_expression "(code **)(pcStack_1f8 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5f94)" ( (binary_expression "pcStack_1f8 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) }))) (if_statement "if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" if (parenthesized_expression "(pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4))" ( (binary_expression "pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)" identifier == (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" { (return_statement "return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);" return (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" * (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" * (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" ( (binary_expression "pcStack_1f8 + -0x5fb4" identifier + number_literal) )))))) ;) })) (expression_statement "pcVar33 = *(code **)(pcStack_1f8 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_1f8 + -0x6004)" identifier = (pointer_expression "*(code **)(pcStack_1f8 + -0x6004)" * (cast_expression "(code **)(pcStack_1f8 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1f8 + -0x6004)" ( (binary_expression "pcStack_1f8 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_pattern_p;" (assignment_expression "pcVar35 = glob_pattern_p" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_220 = pcVar33 + 0x808a8;" (assignment_expression "pcStack_220 = pcVar33 + 0x808a8" identifier = (binary_expression "pcVar33 + 0x808a8" identifier + number_literal)) ;) (expression_statement "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);" (assignment_expression "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" identifier = (cast_expression "(int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a8f4)" * (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a8f4)" * (cast_expression "(undefined4 **)(pcVar33 + 0x7a8f4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a8f4)" ( (binary_expression "pcVar33 + 0x7a8f4" identifier + number_literal) ))))))) ;) (expression_statement "pppppppiStack_210 = pppppppiVar25;" (assignment_expression "pppppppiStack_210 = pppppppiVar25" identifier = identifier) ;) (expression_statement "pcStack_20c = pcVar35;" (assignment_expression "pcStack_20c = pcVar35" identifier = identifier) ;) (expression_statement "iVar3 = (**(code **)(pcVar33 + 0x7a848))();" (assignment_expression "iVar3 = (**(code **)(pcVar33 + 0x7a848))()" identifier = (call_expression "(**(code **)(pcVar33 + 0x7a848))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7a848))" ( (pointer_expression "**(code **)(pcVar33 + 0x7a848)" * (pointer_expression "*(code **)(pcVar33 + 0x7a848)" * (cast_expression "(code **)(pcVar33 + 0x7a848)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a848)" ( (binary_expression "pcVar33 + 0x7a848" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" if (parenthesized_expression "(iVar3 == 1)" ( (binary_expression "iVar3 == 1" identifier == number_literal) )) (compound_statement "{\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }" { (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" identifier = (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dccf0(pppppppiVar7)" identifier (argument_list "(pppppppiVar7)" ( identifier ))))) ;) }) (else_clause "else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" else (compound_statement "{\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" { (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar27 = pppppppiVar7;" (assignment_expression "pppppppiVar27 = pppppppiVar7" identifier = identifier) ;) (expression_statement "iVar3 = xdupmbstowcs(&pppppppiStack_218);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_218)" identifier = (call_expression "xdupmbstowcs(&pppppppiStack_218)" identifier (argument_list "(&pppppppiStack_218)" ( (pointer_expression "&pppppppiStack_218" & identifier) )))) ;) (if_statement "if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }" { (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" identifier = (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dccf0(pppppppiVar7)" identifier (argument_list "(pppppppiVar7)" ( identifier ))))) ;) (expression_statement "pppppppiVar7 = pppppppiVar27;" (assignment_expression "pppppppiVar7 = pppppppiVar27" identifier = identifier) ;) }) (else_clause "else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" else (compound_statement "{\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" { (expression_statement "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);" (assignment_expression "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" identifier = (cast_expression "(int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" ( (binary_expression "*(int *)(pcStack_220 + -0x7f90) + -0x305c" (pointer_expression "*(int *)(pcStack_220 + -0x7f90)" * (cast_expression "(int *)(pcStack_220 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_220 + -0x7f90)" ( (binary_expression "pcStack_220 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (while_statement "while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" { (expression_statement "ppppppiVar21 = *pppppppiStack_218;" (assignment_expression "ppppppiVar21 = *pppppppiStack_218" identifier = (pointer_expression "*pppppppiStack_218" * identifier)) ;) (expression_statement "pppppppiStack_218 = pppppppiStack_218 + 1;" (assignment_expression "pppppppiStack_218 = pppppppiStack_218 + 1" identifier = (binary_expression "pppppppiStack_218 + 1" identifier + number_literal)) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) break;" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (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 "uVar5 = (int)ppppppiVar21 - 0x21;" (assignment_expression "uVar5 = (int)ppppppiVar21 - 0x21" identifier = (binary_expression "(int)ppppppiVar21 - 0x21" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) ;) (if_statement "if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(uVar5 < 0x3d)" ( (binary_expression "uVar5 < 0x3d" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" { (expression_statement "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();" (assignment_expression "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" identifier = (cast_expression "(int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" (parenthesized_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))" ( (pointer_expression "*(pcStack_220 + (int)pppppppiVar22[uVar5])" * (parenthesized_expression "(pcStack_220 + (int)pppppppiVar22[uVar5])" ( (binary_expression "pcStack_220 + (int)pppppppiVar22[uVar5]" identifier + (cast_expression "(int)pppppppiVar22[uVar5]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppiVar22[uVar5]" identifier [ identifier ]))) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) })) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_220 + -0x5f94))();" (call_expression "(**(code **)(pcStack_220 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_220 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_220 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_220 + -0x5f94)" * (cast_expression "(code **)(pcStack_220 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x5f94)" ( (binary_expression "pcStack_220 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiVar7 = pppppppiStack_218;" (assignment_expression "pppppppiVar7 = pppppppiStack_218" identifier = identifier) ;) }))) }))) (if_statement "if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }" if (parenthesized_expression "(pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4))" ( (binary_expression "pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" identifier == (cast_expression "(int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "**(undefined4 **)(pcStack_220 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(pcStack_220 + -0x5fb4)" * (cast_expression "(undefined4 **)(pcStack_220 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x5fb4)" ( (binary_expression "pcStack_220 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiVar25;\n  }" { (return_statement "return pppppppiVar25;" return identifier ;) })) (expression_statement "pcVar33 = *(code **)(pcStack_220 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_220 + -0x6004)" identifier = (pointer_expression "*(code **)(pcStack_220 + -0x6004)" * (cast_expression "(code **)(pcStack_220 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_220 + -0x6004)" ( (binary_expression "pcStack_220 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_vector;" (assignment_expression "pcVar35 = glob_vector" identifier = identifier) ;) (expression_statement "pppppppiVar27 = pppppppiStack_214;" (assignment_expression "pppppppiVar27 = pppppppiStack_214" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_348 = pcVar33 + 0x80714;" (assignment_expression "pcStack_348 = pcVar33 + 0x80714" identifier = (binary_expression "pcVar33 + 0x80714" identifier + number_literal)) ;) (expression_statement "puVar34 = auStack_358;" (assignment_expression "puVar34 = auStack_358" identifier = identifier) ;) (expression_statement "puVar8 = auStack_358;" (assignment_expression "puVar8 = auStack_358" identifier = identifier) ;) (expression_statement "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);" (assignment_expression "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760)" identifier = (cast_expression "(char *)**(undefined4 **)(pcVar33 + 0x7a760)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a760)" * (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a760)" * (cast_expression "(undefined4 **)(pcVar33 + 0x7a760)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x7a760)" ( (binary_expression "pcVar33 + 0x7a760" identifier + number_literal) ))))))) ;) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar28 = unaff_s5;" (assignment_expression "pppppppiVar28 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppiStack_304 = pppppppiVar22;" (assignment_expression "pppppppiStack_304 = pppppppiVar22" identifier = identifier) ;) (expression_statement "pppppppiStack_258 = pppppppiVar25;" (assignment_expression "pppppppiStack_258 = pppppppiVar25" identifier = identifier) ;) (expression_statement "pppppppiStack_254 = pppppppiVar6;" (assignment_expression "pppppppiStack_254 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiStack_250 = unaff_s2;" (assignment_expression "pppppppiStack_250 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppiStack_24c = unaff_s3;" (assignment_expression "pppppppiStack_24c = unaff_s3" identifier = identifier) ;) (expression_statement "pppppppiStack_248 = unaff_s4;" (assignment_expression "pppppppiStack_248 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppiStack_244 = unaff_s5;" (assignment_expression "pppppppiStack_244 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppiStack_240 = unaff_s6;" (assignment_expression "pppppppiStack_240 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppiStack_23c = pppppppiVar4;" (assignment_expression "pppppppiStack_23c = pppppppiVar4" identifier = identifier) ;) (expression_statement "ppppppiStack_238 = unaff_s8;" (assignment_expression "ppppppiStack_238 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_234 = pcVar35;" (assignment_expression "pcStack_234 = pcVar35" identifier = identifier) ;) (if_statement "if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" if (parenthesized_expression "((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'))" ( (binary_expression "(pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" (parenthesized_expression "(pppppppiVar27 == (int *******)0x0)" ( (binary_expression "pppppppiVar27 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "(pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" ( (comma_expression "pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'" (assignment_expression "pppppppiVar28 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) , (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" * (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" { (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar3 = FUN_000dd618(pppppppiVar22);" (assignment_expression "iVar3 = FUN_000dd618(pppppppiVar22)" identifier = (call_expression "FUN_000dd618(pppppppiVar22)" identifier (argument_list "(pppppppiVar22)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" { (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) })) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" identifier = identifier) ;) (expression_statement "pppppppiVar25 = &ppppppiStack_350;" (assignment_expression "pppppppiVar25 = &ppppppiStack_350" identifier = (pointer_expression "&ppppppiStack_350" & identifier)) ;) (expression_statement "ppppppiStack_350 = (int ******)0x0;" (assignment_expression "ppppppiStack_350 = (int ******)0x0" identifier = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);" (assignment_expression "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal ))))) ;) (expression_statement "bVar1 = puVar8 == (undefined1 *)0x0;" (assignment_expression "bVar1 = puVar8 == (undefined1 *)0x0" identifier = (binary_expression "puVar8 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" if (parenthesized_expression "(bVar1)" ( identifier )) (compound_statement "{\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" else (compound_statement "{\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" { (expression_statement "puStack_34c = puVar8;" (assignment_expression "puStack_34c = puVar8" identifier = identifier) ;) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" identifier = number_literal) ;) }))) (expression_statement "uStack_30c = (uint)bVar1;" (assignment_expression "uStack_30c = (uint)bVar1" identifier = (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pppppppiVar28 = (int *******)(uint)!bVar1;" (assignment_expression "pppppppiVar28 = (int *******)(uint)!bVar1" identifier = (cast_expression "(int *******)(uint)!bVar1" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)!bVar1" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar1" ! identifier)))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "puVar8 = auStack_360;" (assignment_expression "puVar8 = auStack_360" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" { (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;" if (parenthesized_expression "(*(char *)pppppppiVar27 == '\0')" ( (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" * (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;)) (expression_statement "iStack_314 = 1;" (assignment_expression "iStack_314 = 1" identifier = number_literal) ;) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" identifier = identifier) ;) (goto_statement "goto LAB_000ddf3c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ddefc:\n    puVar34 = puVar8;" statement_identifier : (expression_statement "puVar34 = puVar8;" (assignment_expression "puVar34 = puVar8" identifier = identifier) ;)) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "iStack_314 = 0;" (assignment_expression "iStack_314 = 0" identifier = number_literal) ;) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" identifier = number_literal) ;) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" statement_identifier : (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier )))) ;)) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (if_statement "if (iStack_314 != 0) goto LAB_000ddefc;" if (parenthesized_expression "(iStack_314 != 0)" ( (binary_expression "iStack_314 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ddefc;" goto statement_identifier ;)) (expression_statement "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);" (assignment_expression "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote)" identifier = (call_expression "glob_pattern_p((char *)pppppppiVar27,(int)__quote)" identifier (argument_list "((char *)pppppppiVar27,(int)__quote)" ( (cast_expression "(char *)pppppppiVar27" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)__quote" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (if_statement "if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" if (parenthesized_expression "(iVar23 == 0)" ( (binary_expression "iVar23 == 0" identifier == number_literal) )) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" { (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "iVar23 = FUN_000dd618(pppppppiStack_304);" (assignment_expression "iVar23 = FUN_000dd618(pppppppiStack_304)" identifier = (call_expression "FUN_000dd618(pppppppiStack_304)" identifier (argument_list "(pppppppiStack_304)" ( identifier )))) ;) (if_statement "if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" if (parenthesized_expression "(-1 < iVar23)" ( (binary_expression "-1 < iVar23" number_literal < identifier) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_304)" ( identifier ))))) ;) (expression_statement "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));" (assignment_expression "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" identifier = (cast_expression "(int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" ( (cast_expression "(undefined1 *)((int)pppppppiVar7 + iVar3 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar7 + iVar3 + 2)" ( (binary_expression "(int)pppppppiVar7 + iVar3 + 2" (binary_expression "(int)pppppppiVar7 + iVar3" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) ))))) ;) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (if_statement "if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }" { (if_statement "if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" else (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) }) (else_clause "else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" else (if_statement "if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }" { (expression_statement "__quote = pppppppiVar27;" (assignment_expression "__quote = pppppppiVar27" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" else (compound_statement "{\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" { (expression_statement "(**(code **)(pcStack_348 + -0x6074))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "FUN_000ddacc(iVar3);" (call_expression "FUN_000ddacc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6,pppppppiStack_304)" ( identifier , identifier ))) ;) (expression_statement "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" * (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar6 + (int)pppppppiVar7)" ( (binary_expression "(int)pppppppiVar6 + (int)pppppppiVar7" (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = number_literal) ;) (expression_statement "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6074)" * (pointer_expression "*(code **)(pcStack_348 + -0x6074)" * (cast_expression "(code **)(pcStack_348 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6074)" ( (binary_expression "pcStack_348 + -0x6074" identifier + number_literal) ))))) )) (argument_list "((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" ( (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" ( (binary_expression "(int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)" (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)((int)pppppppiVar7 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppiVar7 + 1)" ( (binary_expression "(int)pppppppiVar7 + 1" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) , identifier ))) ;) (expression_statement "__quote = pppppppiVar6;" (assignment_expression "__quote = pppppppiVar6" identifier = identifier) ;) (expression_statement "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);" (assignment_expression "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6278))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6278)" * (pointer_expression "*(code **)(pcStack_348 + -0x6278)" * (cast_expression "(code **)(pcStack_348 + -0x6278)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6278)" ( (binary_expression "pcStack_348 + -0x6278" identifier + number_literal) ))))) )) (argument_list "(3,pppppppiVar6,auStack_300)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" if (parenthesized_expression "(iVar23 < 0)" ( (binary_expression "iVar23 < 0" identifier < number_literal) )) (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (expression_statement "pppppppiVar25 = (int *******)(puVar34 + 8);" (assignment_expression "pppppppiVar25 = (int *******)(puVar34 + 8)" identifier = (cast_expression "(int *******)(puVar34 + 8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar34 + 8)" ( (binary_expression "puVar34 + 8" identifier + number_literal) )))) ;) (expression_statement "*pppppppiVar25 = (int ******)0x0;" (assignment_expression "*pppppppiVar25 = (int ******)0x0" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "*(int *)(puVar34 + 0xc) = iVar3;" (assignment_expression "*(int *)(puVar34 + 0xc) = iVar3" (pointer_expression "*(int *)(puVar34 + 0xc)" * (cast_expression "(int *)(puVar34 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + 0xc)" ( (binary_expression "puVar34 + 0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "pppppppiVar28 = (int *******)0x1;" (assignment_expression "pppppppiVar28 = (int *******)0x1" identifier = (cast_expression "(int *******)0x1" ( (type_descriptor "int *******" primitive_type (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 "puVar8 = puVar34 + -8;" (assignment_expression "puVar8 = puVar34 + -8" identifier = (binary_expression "puVar34 + -8" identifier + number_literal)) ;) }))))) (goto_statement "goto LAB_000ddefc;" goto statement_identifier ;) })) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) (else_clause "else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" else (compound_statement "{\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" { (expression_statement "iStack_308 = (**(code **)(pcStack_348 + -0x6288))();" (assignment_expression "iStack_308 = (**(code **)(pcStack_348 + -0x6288))()" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6288))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6288))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6288)" * (pointer_expression "*(code **)(pcStack_348 + -0x6288)" * (cast_expression "(code **)(pcStack_348 + -0x6288)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6288)" ( (binary_expression "pcStack_348 + -0x6288" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" if (parenthesized_expression "(iStack_308 != 0)" ( (binary_expression "iStack_308 != 0" identifier != number_literal) )) (compound_statement "{\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" { (expression_statement "uStack_320 = 1;" (assignment_expression "uStack_320 = 1" identifier = number_literal) ;) (if_statement "if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }" if (parenthesized_expression "(**(int **)(pcStack_348 + -0x70d8) != 0)" ( (binary_expression "**(int **)(pcStack_348 + -0x70d8) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70d8)" * (pointer_expression "*(int **)(pcStack_348 + -0x70d8)" * (cast_expression "(int **)(pcStack_348 + -0x70d8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x70d8)" ( (binary_expression "pcStack_348 + -0x70d8" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n        uStack_320 = 5;\n      }" { (expression_statement "uStack_320 = 5;" (assignment_expression "uStack_320 = 5" identifier = number_literal) ;) })) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" identifier = (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" * (cast_expression "(int **)(pcStack_348 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x7bf8)" ( (binary_expression "pcStack_348 + -0x7bf8" identifier + number_literal) ))))) ;) (if_statement "if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" if (parenthesized_expression "(**(int **)(pcStack_348 + -0x70e4) != 0)" ( (binary_expression "**(int **)(pcStack_348 + -0x70e4) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70e4)" * (pointer_expression "*(int **)(pcStack_348 + -0x70e4)" * (cast_expression "(int **)(pcStack_348 + -0x70e4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x70e4)" ( (binary_expression "pcStack_348 + -0x70e4" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" { (expression_statement "uStack_320 = uStack_320 | 0x10;" (assignment_expression "uStack_320 = uStack_320 | 0x10" identifier = (binary_expression "uStack_320 | 0x10" identifier | number_literal)) ;) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" identifier = (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" * (cast_expression "(int **)(pcStack_348 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x7bf8)" ( (binary_expression "pcStack_348 + -0x7bf8" identifier + number_literal) ))))) ;) })) (if_statement "if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }" if (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) (compound_statement "{\n        uStack_320 = uStack_320 | 0x20;\n      }" { (expression_statement "uStack_320 = uStack_320 | 0x20;" (assignment_expression "uStack_320 = uStack_320 | 0x20" identifier = (binary_expression "uStack_320 | 0x20" identifier | number_literal)) ;) })) (expression_statement "uStack_330 = (uint)pppppppiVar7 & 0x210;" (assignment_expression "uStack_330 = (uint)pppppppiVar7 & 0x210" identifier = (binary_expression "(uint)pppppppiVar7 & 0x210" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar5 = (int)pppppppiVar7 >> 2 & 4;" (assignment_expression "uVar5 = (int)pppppppiVar7 >> 2 & 4" identifier = (binary_expression "(int)pppppppiVar7 >> 2 & 4" (binary_expression "(int)pppppppiVar7 >> 2" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) & number_literal)) ;) (expression_statement "uStack_33c = (uint)pppppppiVar7 & 0x100;" (assignment_expression "uStack_33c = (uint)pppppppiVar7 & 0x100" identifier = (binary_expression "(uint)pppppppiVar7 & 0x100" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uStack_338 = uVar5 | 8;" (assignment_expression "uStack_338 = uVar5 | 8" identifier = (binary_expression "uVar5 | 8" identifier | number_literal)) ;) (if_statement "if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }" if (parenthesized_expression "(uStack_33c == 0)" ( (binary_expression "uStack_33c == 0" identifier == number_literal) )) (compound_statement "{\n        uStack_338 = uVar5;\n      }" { (expression_statement "uStack_338 = uVar5;" (assignment_expression "uStack_338 = uVar5" identifier = identifier) ;) })) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);" (assignment_expression "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" identifier = (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x3104)" ( (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x3104" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" * (cast_expression "(int *)(pcStack_348 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);" (assignment_expression "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" identifier = (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" ( (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x29e8" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" * (cast_expression "(int *)(pcStack_348 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);" (assignment_expression "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990)" identifier = (pointer_expression "*(undefined4 *)(pcStack_348 + -0x6990)" * (cast_expression "(undefined4 *)(pcStack_348 + -0x6990)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_348 + -0x6990)" ( (binary_expression "pcStack_348 + -0x6990" identifier + number_literal) ))))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (labeled_statement "LAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" statement_identifier : (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" statement_identifier : (do_statement "do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" do (compound_statement "{\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      }" { (expression_statement "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);" (assignment_expression "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cfc)" * (cast_expression "(int ********)(pcStack_348 + -0x7cfc)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cfc)" ( (binary_expression "pcStack_348 + -0x7cfc" identifier + number_literal) ))))) ;) (do_statement "do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);" do (compound_statement "{\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        }" { (if_statement "if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" ( (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (if_statement "if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(*pppppppiVar4 != (int ******)0x0)" ( (binary_expression "*pppppppiVar4 != (int ******)0x0" (pointer_expression "*pppppppiVar4" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6964))(2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6964))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6964)" * (pointer_expression "*(code **)(pcStack_348 + -0x6964)" * (cast_expression "(code **)(pcStack_348 + -0x6964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6964)" ( (binary_expression "pcStack_348 + -0x6964" identifier + number_literal) ))))) )) (argument_list "(2)" ( number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) (expression_statement "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);" (assignment_expression "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" identifier = (cast_expression "(int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_348 + -0x6214))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6214))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6214)" * (pointer_expression "*(code **)(pcStack_348 + -0x6214)" * (cast_expression "(code **)(pcStack_348 + -0x6214)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6214)" ( (binary_expression "pcStack_348 + -0x6214" identifier + number_literal) ))))) )) (argument_list "(iStack_308)" ( identifier ))))) ;) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000de200;" if (parenthesized_expression "(piVar15 == (int *)0x0)" ( (binary_expression "piVar15 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000de200;" goto statement_identifier ;)) }) while (parenthesized_expression "(*piVar15 == 0 && piVar15[1] == 0)" ( (binary_expression "*piVar15 == 0 && piVar15[1] == 0" (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) && (binary_expression "piVar15[1] == 0" (subscript_expression "piVar15[1]" identifier [ number_literal ]) == number_literal)) )) ;) (expression_statement "uVar5 = (**(code **)(pcStack_348 + -0x6060))();" (assignment_expression "uVar5 = (**(code **)(pcStack_348 + -0x6060))()" identifier = (call_expression "(**(code **)(pcStack_348 + -0x6060))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6060))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6060)" * (pointer_expression "*(code **)(pcStack_348 + -0x6060)" * (cast_expression "(code **)(pcStack_348 + -0x6060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6060)" ( (binary_expression "pcStack_348 + -0x6060" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" if (parenthesized_expression "(1 < uVar5)" ( (binary_expression "1 < uVar5" number_literal < identifier) )) (compound_statement "{\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" { (expression_statement "__quote = (int *******)((int)piVar15 + 0x13);" (assignment_expression "__quote = (int *******)((int)piVar15 + 0x13)" identifier = (cast_expression "(int *******)((int)piVar15 + 0x13)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)piVar15 + 0x13)" ( (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);" (assignment_expression "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" identifier = (call_expression "FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" identifier (argument_list "(pppppppiVar27,__quote,pppppppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_000de028;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) })) (expression_statement "pppppppiVar25 = (int *******)((int)piVar15 + 0x13);" (assignment_expression "pppppppiVar25 = (int *******)((int)piVar15 + 0x13)" identifier = (cast_expression "(int *******)((int)piVar15 + 0x13)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)piVar15 + 0x13)" ( (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" identifier = identifier) ;) (expression_statement "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);" (assignment_expression "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" identifier = (call_expression "(*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" (parenthesized_expression "(*pcStack_31c)" ( (pointer_expression "*pcStack_31c" * identifier) )) (argument_list "(pppppppiVar27,pppppppiVar25,pppppppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_000de028;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) (if_statement "if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x18) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x18) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x18)" ( (binary_expression "(uint)pppppppiVar7 & 0x18" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }" { (labeled_statement "LAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" statement_identifier : (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" ( (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" { (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" if (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" ( (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" ( (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) })) (labeled_statement "LAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" statement_identifier : (expression_statement "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;)) (expression_statement "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);" (assignment_expression "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9)" identifier = (cast_expression "(int *******)fnx_fromfs(pppppppiVar25,uVar9)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "fnx_fromfs(pppppppiVar25,uVar9)" identifier (argument_list "(pppppppiVar25,uVar9)" ( identifier , identifier ))))) ;) (expression_statement "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);" (assignment_expression "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320)" identifier = (call_expression "strmatch(pppppppiVar27,__quote,uStack_320)" identifier (argument_list "(pppppppiVar27,__quote,uStack_320)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 == 1) goto LAB_000de028;" if (parenthesized_expression "(iVar3 == 1)" ( (binary_expression "iVar3 == 1" identifier == number_literal) )) (goto_statement "goto LAB_000de028;" goto statement_identifier ;)) (if_statement "if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" if (parenthesized_expression "(iStack_314 < 100000)" ( (binary_expression "iStack_314 < 100000" identifier < number_literal) )) (compound_statement "{\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }" { (expression_statement "unaff_s6 = (int *******)(puVar34 + 8);" (assignment_expression "unaff_s6 = (int *******)(puVar34 + 8)" identifier = (cast_expression "(int *******)(puVar34 + 8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar34 + 8)" ( (binary_expression "puVar34 + 8" identifier + number_literal) )))) ;) (expression_statement "iStack_314 = iStack_314 + 8;" (assignment_expression "iStack_314 = iStack_314 + 8" identifier = (binary_expression "iStack_314 + 8" identifier + number_literal)) ;) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) ))))) ;) (expression_statement "puVar34 = puVar34 + -8;" (assignment_expression "puVar34 = puVar34 + -8" identifier = (binary_expression "puVar34 + -8" identifier + number_literal)) ;) }) (else_clause "else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" else (compound_statement "{\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" { (expression_statement "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;) (if_statement "if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                unaff_s2 = unaff_s6;\n              }" { (expression_statement "unaff_s2 = unaff_s6;" (assignment_expression "unaff_s2 = unaff_s6" identifier = identifier) ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" if (parenthesized_expression "(unaff_s6 == (int *******)0x0)" ( (binary_expression "unaff_s6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" { (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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                  uStack_30c = 1;\n                }" { (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) }) (else_clause "else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" else (compound_statement "{\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar4)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) }))) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) })) }))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (expression_statement "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de200;" goto statement_identifier ;) })) (expression_statement "*unaff_s6 = (int ******)pppppppiVar6;" (assignment_expression "*unaff_s6 = (int ******)pppppppiVar6" (pointer_expression "*unaff_s6" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "unaff_s6[1] = (int ******)pppppppiVar4;" (assignment_expression "unaff_s6[1] = (int ******)pppppppiVar4" (subscript_expression "unaff_s6[1]" identifier [ number_literal ]) = (cast_expression "(int ******)pppppppiVar4" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" identifier = (call_expression "(**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60fc))" ( (pointer_expression "**(code **)(pcVar33 + -0x60fc)" * (pointer_expression "*(code **)(pcVar33 + -0x60fc)" * (cast_expression "(code **)(pcVar33 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x60fc)" ( (binary_expression "pcVar33 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier )))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" * (cast_expression "(code **)(pcStack_348 + -0x5f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f88)" ( (binary_expression "pcStack_348 + -0x5f88" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar4,pppppppiVar25,iVar3 + 1)" ( identifier , identifier , (binary_expression "iVar3 + 1" identifier + number_literal) ))) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" identifier = identifier) ;) (expression_statement "pppppppiVar6 = unaff_s6;" (assignment_expression "pppppppiVar6 = unaff_s6" identifier = identifier) ;) (goto_statement "goto LAB_000de028;" goto statement_identifier ;) }))) (if_statement "if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" if (parenthesized_expression "(iStack_32c == 0)" ( (binary_expression "iStack_32c == 0" identifier == number_literal) )) (compound_statement "{\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" { (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" identifier = identifier) ;) (expression_statement "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);" (assignment_expression "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" identifier = (cast_expression "(int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" identifier (argument_list "(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" ( identifier , identifier , (binary_expression "(uint)pppppppiVar7 & 0xfffffdff" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "pppppppiStack_340 = unaff_s6;" (assignment_expression "pppppppiStack_340 = unaff_s6" identifier = identifier) ;) (if_statement "if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" if (parenthesized_expression "(unaff_s6 != (int *******)0x0)" ( (binary_expression "unaff_s6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" { (if_statement "if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" if (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" ( (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" { (expression_statement "iStack_318 = iStack_32c;" (assignment_expression "iStack_318 = iStack_32c" identifier = identifier) ;) (expression_statement "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de4c4;" goto statement_identifier ;) })) (if_statement "if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" if (parenthesized_expression "(unaff_s6 != *(int ********)(pcStack_348 + -0x7174))" ( (binary_expression "unaff_s6 != *(int ********)(pcStack_348 + -0x7174)" identifier != (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) })) })) (goto_statement "goto LAB_000de180;" goto statement_identifier ;) })) }) (else_clause "else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" else (compound_statement "{\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" { (expression_statement "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);" (assignment_expression "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" identifier = (cast_expression "(int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" identifier (argument_list "(pppppppiStack_304,pppppppiVar25,uStack_338)" ( identifier , identifier , identifier ))))) ;) (expression_statement "__quote = pppppppiVar7;" (assignment_expression "__quote = pppppppiVar7" identifier = identifier) ;) (expression_statement "iStack_32c = (*pcStack_334)(pppppppiStack_324);" (assignment_expression "iStack_32c = (*pcStack_334)(pppppppiStack_324)" identifier = (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" ( (pointer_expression "*pcStack_334" * identifier) )) (argument_list "(pppppppiStack_324)" ( identifier )))) ;) (if_statement "if (-1 < iStack_32c) goto LAB_000de13c;" if (parenthesized_expression "(-1 < iStack_32c)" ( (binary_expression "-1 < iStack_32c" number_literal < identifier) )) (goto_statement "goto LAB_000de13c;" goto statement_identifier ;)) (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" if (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" ( (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" ( (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000de02c;" goto statement_identifier ;) })) (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;" if (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" ( (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" ( (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000de658;" goto statement_identifier ;)) }))) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;" if (parenthesized_expression "((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))" ( (binary_expression "(iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" (parenthesized_expression "(iStack_32c != -2)" ( (binary_expression "iStack_32c != -2" identifier != number_literal) )) || (parenthesized_expression "(iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" ( (comma_expression "iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0" (assignment_expression "iVar3 = (*pcStack_334)(pppppppiStack_324)" identifier = (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" ( (pointer_expression "*pcStack_334" * identifier) )) (argument_list "(pppppppiStack_324)" ( identifier )))) , (binary_expression "iVar3 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000de180;" goto statement_identifier ;)) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" * (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7cf8)" ( (binary_expression "pcStack_348 + -0x7cf8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" identifier = (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" * (cast_expression "(int ********)(pcStack_348 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(pcStack_348 + -0x7174)" ( (binary_expression "pcStack_348 + -0x7174" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) (labeled_statement "code_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" statement_identifier : (expression_statement "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,iStack_1b0)" ( identifier , identifier ))) ;)) (if_statement "if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" if (parenthesized_expression "(unaff_s6 != (int *******)0x2f)" ( (binary_expression "unaff_s6 != (int *******)0x2f" identifier != (cast_expression "(int *******)0x2f" ( (type_descriptor "int *******" primitive_type (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 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" { (expression_statement "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" * (cast_expression "(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppiVar7 + (int)pppppppiVar4)" ( (binary_expression "(int)pppppppiVar7 + (int)pppppppiVar4" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppiVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = number_literal) ;) })) (expression_statement "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" * (cast_expression "(code **)(puStack_1c0 + -0x6074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6074)" ( (binary_expression "puStack_1c0 + -0x6074" identifier + number_literal) ))))) )) (argument_list "((int)pppppppiVar7 + iStack_1a8)" ( (binary_expression "(int)pppppppiVar7 + iStack_1a8" (cast_expression "(int)pppppppiVar7" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))) ;) (if_statement "if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" if (parenthesized_expression "(uStack_1a4 != 0)" ( (binary_expression "uStack_1a4 != 0" identifier != number_literal) )) (compound_statement "{\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" { (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_1b4;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_1b4" identifier = (cast_expression "(int *******)*pppppppiStack_1b4" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_1b4" * identifier))) ;) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" * (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" * (cast_expression "(code **)(puStack_1c0 + -0x6258)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x6258)" ( (binary_expression "puStack_1c0 + -0x6258" identifier + number_literal) ))))) )) (argument_list "(3,pppppppiVar25,unaff_s8)" ( number_literal , identifier , identifier )))) ;) (expression_statement "pppppppiVar6 = pppppppiStack_1b4;" (assignment_expression "pppppppiVar6 = pppppppiStack_1b4" identifier = identifier) ;) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" if (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" ( (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" ( (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" ( (binary_expression "uStack_180 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" { (expression_statement "ppppppiVar21 = *pppppppiStack_1b4;" (assignment_expression "ppppppiVar21 = *pppppppiStack_1b4" identifier = (pointer_expression "*pppppppiStack_1b4" * identifier)) ;) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" identifier = (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" ( (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" * (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" * (cast_expression "(code **)(puStack_1c0 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_1c0 + -0x60fc)" ( (binary_expression "puStack_1c0 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3)" identifier = (cast_expression "(int *******)((int)ppppppiVar21 + iVar3)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppiVar21 + iVar3)" ( (binary_expression "(int)ppppppiVar21 + iVar3" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "*(undefined1 *)pppppppiVar7 = 0x2f;" (assignment_expression "*(undefined1 *)pppppppiVar7 = 0x2f" (pointer_expression "*(undefined1 *)pppppppiVar7" * (cast_expression "(undefined1 *)pppppppiVar7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0" (pointer_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" * (cast_expression "(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*pppppppiVar6 + iVar3 + 1)" ( (binary_expression "(int)*pppppppiVar6 + iVar3 + 1" (binary_expression "(int)*pppppppiVar6 + iVar3" (cast_expression "(int)*pppppppiVar6" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pppppppiVar6" * identifier)) + identifier) + number_literal) )))) = number_literal) ;) })) })) (expression_statement "unaff_s3 = (int *******)((int)unaff_s3 + 1);" (assignment_expression "unaff_s3 = (int *******)((int)unaff_s3 + 1)" identifier = (cast_expression "(int *******)((int)unaff_s3 + 1)" ( (type_descriptor "int *******" primitive_type (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) )))) ;) (expression_statement "iVar3 = (int)unaff_s3 * 4;" (assignment_expression "iVar3 = (int)unaff_s3 * 4" identifier = (binary_expression "(int)unaff_s3 * 4" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppppiVar6 = (int *******)*unaff_s4;" (assignment_expression "pppppppiVar6 = (int *******)*unaff_s4" identifier = (cast_expression "(int *******)*unaff_s4" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*unaff_s4" * identifier))) ;) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" identifier = (binary_expression "unaff_s2 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s4 = unaff_s4 + 1;" (assignment_expression "unaff_s4 = unaff_s4 + 1" identifier = (binary_expression "unaff_s4 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" identifier = identifier) ;) (if_statement "if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;" if (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" ( (binary_expression "pppppppiVar6 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000dda68;" goto statement_identifier ;)) (goto_statement "goto LAB_000dd968;" goto statement_identifier ;) (labeled_statement "LAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" statement_identifier : (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;)) (if_statement "if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;" if (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" ( (binary_expression "pppppppiVar25 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 code_r0x000de4dc;" goto statement_identifier ;)) (if_statement "if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" if (parenthesized_expression "(pppppppiStack_310 != (int *******)0x0)" ( (binary_expression "pppppppiStack_310 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" { (do_statement "do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);" do (compound_statement "{\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    }" { (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_310;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_310" identifier = (cast_expression "(int *******)*pppppppiStack_310" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiStack_310" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" identifier = identifier) ;) }) while (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" ( (binary_expression "pppppppiVar25 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_340)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000de200;" goto statement_identifier ;) (labeled_statement "code_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" statement_identifier : (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" if (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" ( (binary_expression "pppppppiVar4 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar4 = pppppppiVar25;\n  }" { (expression_statement "pppppppiVar4 = pppppppiVar25;" (assignment_expression "pppppppiVar4 = pppppppiVar25" identifier = identifier) ;) }))) (expression_statement "*pppppppiVar25 = (int ******)pppppppiStack_310;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiStack_310" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiStack_310" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar25[1] = *unaff_s6;" (assignment_expression "pppppppiVar25[1] = *unaff_s6" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = (pointer_expression "*unaff_s6" * identifier)) ;) (expression_statement "iStack_318 = iStack_318 + 1;" (assignment_expression "iStack_318 = iStack_318 + 1" identifier = (binary_expression "iStack_318 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" identifier = (binary_expression "unaff_s6 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;" if (parenthesized_expression "(*unaff_s6 == (int ******)0x0)" ( (binary_expression "*unaff_s6 == (int ******)0x0" (pointer_expression "*unaff_s6" * identifier) == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto code_r0x000de510;" goto statement_identifier ;)) (goto_statement "goto LAB_000de4c4;" goto statement_identifier ;) (labeled_statement "LAB_000df004:\n  puVar31 = puVar31 + 1;" statement_identifier : (expression_statement "puVar31 = puVar31 + 1;" (assignment_expression "puVar31 = puVar31 + 1" identifier = (binary_expression "puVar31 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar29 = (char *)*puVar31;" (assignment_expression "pcVar29 = (char *)*puVar31" identifier = (cast_expression "(char *)*puVar31" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar31" * identifier))) ;) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" identifier = (pointer_expression "*(int **)(puVar8 + -0x30)" * (cast_expression "(int **)(puVar8 + -0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" { (labeled_statement "LAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" statement_identifier : (if_statement "if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" if (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) (compound_statement "{\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (do_statement "do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);" do (compound_statement "{\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      }" { (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(*piVar15 != 0)" ( (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" * identifier) != number_literal) )) ;) }))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" * (cast_expression "(undefined4 *)(puVar8 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (goto_statement "goto LAB_000df010;" goto statement_identifier ;) (labeled_statement "code_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" statement_identifier : (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_340)" ( identifier ))) ;)) (if_statement "if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" if (parenthesized_expression "(iStack_318 != 0)" ( (binary_expression "iStack_318 != 0" identifier != number_literal) )) (compound_statement "{\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" { (if_statement "if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      unaff_s2 = pppppppiVar4;\n    }" { (expression_statement "unaff_s2 = pppppppiVar4;" (assignment_expression "unaff_s2 = pppppppiVar4" identifier = identifier) ;) })) (expression_statement "*pppppppiVar4 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar4 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar4" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + iStack_318)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + iStack_318)" ( (binary_expression "(int)pppppppiVar28 + iStack_318" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) })) (labeled_statement "LAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" statement_identifier : (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;)) (if_statement "if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    unaff_s2 = pppppppiVar25;\n  }" { (expression_statement "unaff_s2 = pppppppiVar25;" (assignment_expression "unaff_s2 = pppppppiVar25" identifier = identifier) ;) })) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier )))) ;) (expression_statement "unaff_s6 = (int *******)(iVar3 + 1);" (assignment_expression "unaff_s6 = (int *******)(iVar3 + 1)" identifier = (cast_expression "(int *******)(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" identifier = (cast_expression "(int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))))) ;) (expression_statement "pppppppiVar22 = pppppppiStack_324;" (assignment_expression "pppppppiVar22 = pppppppiStack_324" identifier = identifier) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }" { (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" if (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) })) }) (else_clause "else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" else (compound_statement "{\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" { (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" if (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" { (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppiVar25[1] = ppppppiVar21;" (assignment_expression "pppppppiVar25[1] = ppppppiVar21" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" * (cast_expression "(code **)(pcStack_348 + -0x5f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f88)" ( (binary_expression "pcStack_348 + -0x5f88" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21,pppppppiStack_324,unaff_s6)" ( identifier , identifier , identifier ))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar22)" ( identifier ))) ;) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (goto_statement "goto LAB_000de028;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier ))) ;) }))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_324)" ( identifier ))) ;) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" identifier = number_literal) ;) (labeled_statement "LAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);" statement_identifier : (expression_statement "(**(code **)(pcStack_348 + -0x6284))(iStack_308);" (call_expression "(**(code **)(pcStack_348 + -0x6284))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6284))" ( (pointer_expression "**(code **)(pcStack_348 + -0x6284)" * (pointer_expression "*(code **)(pcStack_348 + -0x6284)" * (cast_expression "(code **)(pcStack_348 + -0x6284)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x6284)" ( (binary_expression "pcStack_348 + -0x6284" identifier + number_literal) ))))) )) (argument_list "(iStack_308)" ( identifier ))) ;)) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" if (parenthesized_expression "(uStack_330 == 0x210)" ( (binary_expression "uStack_330 == 0x210" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }" { (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" identifier = (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" * (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" * (cast_expression "(code **)(pcStack_348 + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60fc)" ( (binary_expression "pcStack_348 + -0x60fc" identifier + number_literal) ))))) )) (argument_list "(pppppppiStack_304)" ( identifier )))) ;) (expression_statement "pppppppiVar7 = (int *******)(iVar3 + 1);" (assignment_expression "pppppppiVar7 = (int *******)(iVar3 + 1)" identifier = (cast_expression "(int *******)(iVar3 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);" (assignment_expression "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))))) ;) (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" identifier = (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" ( (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" * (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" * (cast_expression "(code **)(pcStack_348 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x60a4)" ( (binary_expression "pcStack_348 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(8)" ( number_literal ))))) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }" { (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) })) }) (else_clause "else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" else (compound_statement "{\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" { (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" if (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" ( (binary_expression "pppppppiVar27 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" { (expression_statement "pppppppiVar25[1] = (int ******)pppppppiVar27;" (assignment_expression "pppppppiVar25[1] = (int ******)pppppppiVar27" (subscript_expression "pppppppiVar25[1]" identifier [ number_literal ]) = (cast_expression "(int ******)pppppppiVar27" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" * identifier) = (cast_expression "(int ******)pppppppiVar6" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" if (parenthesized_expression "(uStack_33c == 0)" ( (binary_expression "uStack_33c == 0" identifier == number_literal) )) (compound_statement "{\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }" { (expression_statement "__quote = pppppppiStack_304;" (assignment_expression "__quote = pppppppiStack_304" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);" (call_expression "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5fac))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5fac)" * (pointer_expression "*(code **)(pcStack_348 + -0x5fac)" * (cast_expression "(code **)(pcStack_348 + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5fac)" ( (binary_expression "pcStack_348 + -0x5fac" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" else (compound_statement "{\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" { (expression_statement "*(undefined1 *)pppppppiVar27 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar27 = 0" (pointer_expression "*(undefined1 *)pppppppiVar27" * (cast_expression "(undefined1 *)pppppppiVar27" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) }))) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" identifier = (cast_expression "(int *******)((int)pppppppiVar28 + 1)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (goto_statement "goto LAB_000ddf00;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar25)" ( identifier ))) ;) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }))) }) (else_clause "else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" else (compound_statement "{\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" { (labeled_statement "LAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" statement_identifier : (if_statement "if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" if (parenthesized_expression "(uStack_30c == 0)" ( (binary_expression "uStack_30c == 0" identifier == number_literal) )) (compound_statement "{\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" { (expression_statement "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);" (assignment_expression "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4)" identifier = (cast_expression "(int *******)(((int)pppppppiVar28 + 1) * 4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)pppppppiVar28 + 1) * 4)" ( (binary_expression "((int)pppppppiVar28 + 1) * 4" (parenthesized_expression "((int)pppppppiVar28 + 1)" ( (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) * number_literal) )))) ;) (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" identifier = (cast_expression "(int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60a4))" ( (pointer_expression "**(code **)(pcVar33 + -0x60a4)" * (pointer_expression "*(code **)(pcVar33 + -0x60a4)" * (cast_expression "(code **)(pcVar33 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x60a4)" ( (binary_expression "pcVar33 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar27)" ( identifier ))))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (if_statement "if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" if (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" ( (binary_expression "pppppppiVar6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" { (if_statement "if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" if (parenthesized_expression "(pppppppiVar28 != (int *******)0x0)" ( (binary_expression "pppppppiVar28 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" { (expression_statement "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);" (assignment_expression "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" identifier = (cast_expression "(int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" ( (binary_expression "(int)(pppppppiVar27 + -1) + (int)pppppppiVar6" (cast_expression "(int)(pppppppiVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pppppppiVar27 + -1)" ( (binary_expression "pppppppiVar27 + -1" identifier + number_literal) ))) + (cast_expression "(int)pppppppiVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppiVar22 = pppppppiVar6;" (assignment_expression "pppppppiVar22 = pppppppiVar6" identifier = identifier) ;) (expression_statement "pppppppiVar27 = pppppppiVar25;" (assignment_expression "pppppppiVar27 = pppppppiVar25" identifier = identifier) ;) (do_statement "do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);" do (compound_statement "{\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          }" { (expression_statement "*pppppppiVar22 = pppppppiVar27[1];" (assignment_expression "*pppppppiVar22 = pppppppiVar27[1]" (pointer_expression "*pppppppiVar22" * identifier) = (subscript_expression "pppppppiVar27[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppiVar22 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar22 = pppppppiVar22 + 1" identifier = (binary_expression "pppppppiVar22 + 1" identifier + number_literal)) ;) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar27;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar27" identifier = (cast_expression "(int *******)*pppppppiVar27" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar27" * identifier))) ;) }) while (parenthesized_expression "(__quote != pppppppiVar22)" ( (binary_expression "__quote != pppppppiVar22" identifier != identifier) )) ;) })) (expression_statement "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1" identifier = (binary_expression "pppppppiVar6 + (int)pppppppiVar28 + 1" (binary_expression "pppppppiVar6 + (int)pppppppiVar28" identifier + (cast_expression "(int)pppppppiVar28" ( (type_descriptor "int" primitive_type) ) identifier)) + number_literal)) ;) (expression_statement "pppppppiVar27[-1] = (int ******)0x0;" (assignment_expression "pppppppiVar27[-1] = (int ******)0x0" (subscript_expression "pppppppiVar27[-1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" identifier = identifier) ;) (if_statement "if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" if (parenthesized_expression "(unaff_s2 != (int *******)0x0)" ( (binary_expression "unaff_s2 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" { (while_statement "while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" while (parenthesized_expression "(pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0)" ( (comma_expression "pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) , (binary_expression "pppppppiVar22 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" { (expression_statement "pppppppiVar25 = pppppppiVar22;" (assignment_expression "pppppppiVar25 = pppppppiVar22" identifier = identifier) ;) (if_statement "if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" if (parenthesized_expression "(pppppppiVar22 == unaff_s2)" ( (binary_expression "pppppppiVar22 == unaff_s2" identifier == identifier) )) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" { (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) (break_statement "break;" break ;) })) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar22;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar22" identifier = (cast_expression "(int *******)*pppppppiVar22" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar22" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar22)" ( identifier ))) ;) (expression_statement "pppppppiVar22 = pppppppiVar27;" (assignment_expression "pppppppiVar22 = pppppppiVar27" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000de914;" goto statement_identifier ;) })) }))) }))) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" identifier = identifier) ;) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" if (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" ( (binary_expression "pppppppiVar25 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    pppppppiVar6 = (int *******)0x0;\n  }" { (expression_statement "pppppppiVar6 = (int *******)0x0;" (assignment_expression "pppppppiVar6 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" else (compound_statement "{\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" { (do_statement "do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);" do (compound_statement "{\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    }" { (if_statement "if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" if (parenthesized_expression "(unaff_s2 == (int *******)0x0)" ( (binary_expression "unaff_s2 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }" { (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" ( (pointer_expression "**(code **)(pcVar33 + -0x5f94)" * (pointer_expression "*(code **)(pcVar33 + -0x5f94)" * (cast_expression "(code **)(pcVar33 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5f94)" ( (binary_expression "pcVar33 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6[1])" ( (subscript_expression "pppppppiVar6[1]" identifier [ number_literal ]) ))) ;) (expression_statement "pppppppiVar6 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiVar6" identifier = (cast_expression "(int *******)*pppppppiVar6" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar6" * identifier))) ;) }) (else_clause "else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" else (compound_statement "{\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" { (if_statement "if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }" if (parenthesized_expression "(pppppppiVar6 == unaff_s2)" ( (binary_expression "pppppppiVar6 == unaff_s2" identifier == identifier) )) (compound_statement "{\n          unaff_s2 = (int *******)0x0;\n        }" { (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" identifier = (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" ( (pointer_expression "**(code **)(pcVar33 + -0x5f94)" * (pointer_expression "*(code **)(pcVar33 + -0x5f94)" * (cast_expression "(code **)(pcVar33 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5f94)" ( (binary_expression "pcVar33 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6[1])" ( (subscript_expression "pppppppiVar6[1]" identifier [ number_literal ]) ))) ;) (expression_statement "pppppppiVar25 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiVar6" identifier = (cast_expression "(int *******)*pppppppiVar6" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*pppppppiVar6" * identifier))) ;) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" ( (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" * (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" * (cast_expression "(code **)(pcStack_348 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_348 + -0x5f94)" ( (binary_expression "pcStack_348 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar6)" ( identifier ))) ;) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" identifier = identifier) ;) }))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" identifier = identifier) ;) }) while (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" ( (binary_expression "pppppppiVar6 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" statement_identifier : (if_statement "if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" if (parenthesized_expression "(pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4))" ( (binary_expression "pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)" identifier == (cast_expression "(char *)**(undefined4 **)(pcVar33 + -0x5fb4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar33 + -0x5fb4)" * (pointer_expression "*(undefined4 **)(pcVar33 + -0x5fb4)" * (cast_expression "(undefined4 **)(pcVar33 + -0x5fb4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x5fb4)" ( (binary_expression "pcVar33 + -0x5fb4" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppiVar6;\n  }" { (return_statement "return pppppppiVar6;" return identifier ;) }))) (expression_statement "pcVar33 = *(code **)(pcVar33 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcVar33 + -0x6004)" identifier = (pointer_expression "*(code **)(pcVar33 + -0x6004)" * (cast_expression "(code **)(pcVar33 + -0x6004)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + -0x6004)" ( (binary_expression "pcVar33 + -0x6004" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = glob_filename;" (assignment_expression "pcVar35 = glob_filename" identifier = identifier) ;) (expression_statement "pcVar29 = pcStack_25c;" (assignment_expression "pcVar29 = pcStack_25c" identifier = identifier) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "*(code **)(puVar8 + -4) = pcVar35;" (assignment_expression "*(code **)(puVar8 + -4) = pcVar35" (pointer_expression "*(code **)(puVar8 + -4)" * (cast_expression "(code **)(puVar8 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -4)" ( (binary_expression "puVar8 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar8 + -8) = auStack_358;" (assignment_expression "*(undefined1 **)(puVar8 + -8) = auStack_358" (pointer_expression "*(undefined1 **)(puVar8 + -8)" * (cast_expression "(undefined1 **)(puVar8 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -8)" ( (binary_expression "puVar8 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0xc) = pppppppiVar4;" (assignment_expression "*(int ********)(puVar8 + -0xc) = pppppppiVar4" (pointer_expression "*(int ********)(puVar8 + -0xc)" * (cast_expression "(int ********)(puVar8 + -0xc)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0xc)" ( (binary_expression "puVar8 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x10) = unaff_s6;" (assignment_expression "*(int ********)(puVar8 + -0x10) = unaff_s6" (pointer_expression "*(int ********)(puVar8 + -0x10)" * (cast_expression "(int ********)(puVar8 + -0x10)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x10)" ( (binary_expression "puVar8 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x14) = pppppppiVar28;" (assignment_expression "*(int ********)(puVar8 + -0x14) = pppppppiVar28" (pointer_expression "*(int ********)(puVar8 + -0x14)" * (cast_expression "(int ********)(puVar8 + -0x14)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x14)" ( (binary_expression "puVar8 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x18) = pppppppiVar7;" (assignment_expression "*(int ********)(puVar8 + -0x18) = pppppppiVar7" (pointer_expression "*(int ********)(puVar8 + -0x18)" * (cast_expression "(int ********)(puVar8 + -0x18)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x18)" ( (binary_expression "puVar8 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x1c) = pppppppiVar27;" (assignment_expression "*(int ********)(puVar8 + -0x1c) = pppppppiVar27" (pointer_expression "*(int ********)(puVar8 + -0x1c)" * (cast_expression "(int ********)(puVar8 + -0x1c)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x1c)" ( (binary_expression "puVar8 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x20) = unaff_s2;" (assignment_expression "*(int ********)(puVar8 + -0x20) = unaff_s2" (pointer_expression "*(int ********)(puVar8 + -0x20)" * (cast_expression "(int ********)(puVar8 + -0x20)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x20)" ( (binary_expression "puVar8 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x24) = pppppppiVar6;" (assignment_expression "*(int ********)(puVar8 + -0x24) = pppppppiVar6" (pointer_expression "*(int ********)(puVar8 + -0x24)" * (cast_expression "(int ********)(puVar8 + -0x24)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x24)" ( (binary_expression "puVar8 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int ********)(puVar8 + -0x28) = pppppppiVar25;" (assignment_expression "*(int ********)(puVar8 + -0x28) = pppppppiVar25" (pointer_expression "*(int ********)(puVar8 + -0x28)" * (cast_expression "(int ********)(puVar8 + -0x28)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x28)" ( (binary_expression "puVar8 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;" (assignment_expression "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c" (pointer_expression "*(code **)(puVar8 + -0x50)" * (cast_expression "(code **)(puVar8 + -0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) = (binary_expression "pcVar33 + 0x7fb4c" identifier + number_literal)) ;) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" identifier = (cast_expression "(int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar33 + 0x79aa8))(4)" (parenthesized_expression "(**(code **)(pcVar33 + 0x79aa8))" ( (pointer_expression "**(code **)(pcVar33 + 0x79aa8)" * (pointer_expression "*(code **)(pcVar33 + 0x79aa8)" * (cast_expression "(code **)(pcVar33 + 0x79aa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0x79aa8)" ( (binary_expression "pcVar33 + 0x79aa8" identifier + number_literal) ))))) )) (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "iVar3 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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    return (int *******)0x0;\n  }" { (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "*pppppppiVar7 = (int ******)0x0;" (assignment_expression "*pppppppiVar7 = (int ******)0x0" (pointer_expression "*pppppppiVar7" * identifier) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);" (assignment_expression "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" identifier = (call_expression "(**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" (parenthesized_expression "(**(code **)(iVar3 + -0x61d4))" ( (pointer_expression "**(code **)(iVar3 + -0x61d4)" * (pointer_expression "*(code **)(iVar3 + -0x61d4)" * (cast_expression "(code **)(iVar3 + -0x61d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + -0x61d4)" ( (binary_expression "iVar3 + -0x61d4" identifier + number_literal) ))))) )) (argument_list "(pcVar29,0x2f)" ( identifier , number_literal )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }" { (labeled_statement "LAB_000deb88:\n    iVar3 = 0;" statement_identifier : (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;)) (expression_statement "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (labeled_statement "LAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" statement_identifier : (if_statement "if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" if (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" identifier = (cast_expression "(int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" ( (type_descriptor "int *******" primitive_type (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 + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" ( (pointer_expression "**(code **)(iVar23 + -0x6098)" * (pointer_expression "*(code **)(iVar23 + -0x6098)" * (cast_expression "(code **)(iVar23 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x6098)" ( (binary_expression "iVar23 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,8)" ( identifier , number_literal ))))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" { (if_statement "if (iVar3 == 0) {\n          return (int *******)0x0;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          return (int *******)0x0;\n        }" { (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" statement_identifier : (expression_statement "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar17 + -0x5f94))" ( (pointer_expression "**(code **)(iVar17 + -0x5f94)" * (pointer_expression "*(code **)(iVar17 + -0x5f94)" * (cast_expression "(code **)(iVar17 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + -0x5f94)" ( (binary_expression "iVar17 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;)) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000df634:\n      iVar24 = uVar5 + 1;" statement_identifier : (expression_statement "iVar24 = uVar5 + 1;" (assignment_expression "iVar24 = uVar5 + 1" identifier = (binary_expression "uVar5 + 1" identifier + number_literal)) ;)) (labeled_statement "LAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" statement_identifier : (expression_statement "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" (assignment_expression "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" identifier = (cast_expression "(int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(iVar17 + -0x60a4))(iVar24)" (parenthesized_expression "(**(code **)(iVar17 + -0x60a4))" ( (pointer_expression "**(code **)(iVar17 + -0x60a4)" * (pointer_expression "*(code **)(iVar17 + -0x60a4)" * (cast_expression "(code **)(iVar17 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar17 + -0x60a4)" ( (binary_expression "iVar17 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar24)" ( identifier ))))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*pppppppiVar7 = ppppppiVar16;" (assignment_expression "*pppppppiVar7 = ppppppiVar16" (pointer_expression "*pppppppiVar7" * identifier) = identifier) ;) (if_statement "if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" if (parenthesized_expression "(ppppppiVar16 != (int ******)0x0)" ( (binary_expression "ppppppiVar16 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);" (call_expression "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24)" (parenthesized_expression "(**(code **)(iVar23 + -0x5fac))" ( (pointer_expression "**(code **)(iVar23 + -0x5fac)" * (pointer_expression "*(code **)(iVar23 + -0x5fac)" * (cast_expression "(code **)(iVar23 + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5fac)" ( (binary_expression "iVar23 + -0x5fac" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar16,ppppppiVar21,iVar24)" ( identifier , identifier , identifier ))) ;) (if_statement "if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" { (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" identifier [ number_literal ]) = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (return_statement "return pppppppiVar7;" return identifier ;) })) (labeled_statement "LAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" statement_identifier : (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" if (parenthesized_expression "((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0))" ( (binary_expression "(iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) || (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) }))) (labeled_statement "LAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" statement_identifier : (if_statement "if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" ( (pointer_expression "**(code **)(iVar23 + -0x7ce8)" * (pointer_expression "*(code **)(iVar23 + -0x7ce8)" * (cast_expression "(code **)(iVar23 + -0x7ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7ce8)" ( (binary_expression "iVar23 + -0x7ce8" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" ( (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" * (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" * (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) })))) (if_statement "if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" identifier = (pointer_expression "*(code **)(iVar23 + -0x7d20)" * (cast_expression "(code **)(iVar23 + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7d20)" ( (binary_expression "iVar23 + -0x7d20" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" ( (pointer_expression "**(code **)(iVar23 + -0x7cf4)" * (pointer_expression "*(code **)(iVar23 + -0x7cf4)" * (cast_expression "(code **)(iVar23 + -0x7cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf4)" ( (binary_expression "iVar23 + -0x7cf4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" identifier = (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) ;) }))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 **)(iVar23 + -0x5f94))();" (call_expression "(**(code **)(iVar23 + -0x5f94))()" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe | 0x100;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe | 0x100" identifier = (binary_expression "(uint)__quote & 0xfffffffe | 0x100" (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) | number_literal)) ;) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" if (parenthesized_expression "(((uint)__quote & 0x400) == 0)" ( (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" else (if_statement "if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" if (parenthesized_expression "(*pcVar29 == '*')" ( (binary_expression "*pcVar29 == '*'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }" { (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;" statement_identifier : (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;)) (if_statement "if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" if (parenthesized_expression "((pcVar29[1] == '*') && (pcVar29[2] == '\0'))" ( (binary_expression "(pcVar29[1] == '*') && (pcVar29[2] == '\0')" (parenthesized_expression "(pcVar29[1] == '*')" ( (binary_expression "pcVar29[1] == '*'" (subscript_expression "pcVar29[1]" identifier [ number_literal ]) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(pcVar29[2] == '\0')" ( (binary_expression "pcVar29[2] == '\0'" (subscript_expression "pcVar29[2]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" { (expression_statement "uVar14 = uVar30 | 0x210;" (assignment_expression "uVar14 = uVar30 | 0x210" identifier = (binary_expression "uVar30 | 0x210" identifier | number_literal)) ;) (if_statement "if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" { (if_statement "if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" if (parenthesized_expression "(((uint)__quote & 0x10) == 0)" ( (binary_expression "((uint)__quote & 0x10) == 0" (parenthesized_expression "((uint)__quote & 0x10)" ( (binary_expression "(uint)__quote & 0x10" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" { (expression_statement "uVar14 = uVar30 & 0xfffffdff | 0x10;" (assignment_expression "uVar14 = uVar30 & 0xfffffdff | 0x10" identifier = (binary_expression "uVar30 & 0xfffffdff | 0x10" (binary_expression "uVar30 & 0xfffffdff" identifier & number_literal) | number_literal)) ;) })) (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) }) (else_clause "else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" else (compound_statement "{\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" { (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) }))) }) (else_clause "else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" else (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) }))))) (labeled_statement "LAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" statement_identifier : (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" identifier = (cast_expression "(int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pcVar29,ppppppiVar16,uVar14)" identifier (argument_list "(pcVar29,ppppppiVar16,uVar14)" ( identifier , identifier , identifier ))))) ;)) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" { (labeled_statement "LAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" statement_identifier : (if_statement "if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" if (parenthesized_expression "(pppppppiVar7 != *(int ********)(iVar23 + -0x7174))" ( (binary_expression "pppppppiVar7 != *(int ********)(iVar23 + -0x7174)" identifier != (pointer_expression "*(int ********)(iVar23 + -0x7174)" * (cast_expression "(int ********)(iVar23 + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" { (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (if_statement "if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" if (parenthesized_expression "((uVar14 & 0x10) != 0)" ( (binary_expression "(uVar14 & 0x10) != 0" (parenthesized_expression "(uVar14 & 0x10)" ( (binary_expression "uVar14 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" { (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" identifier = (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" ( (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);" (assignment_expression "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" identifier = (cast_expression "(int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" identifier (argument_list "(ppppppiVar16,pppppppiVar7,__quote)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (iVar3 == 0) {\n          return pppppppiVar7;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          return pppppppiVar7;\n        }" { (return_statement "return pppppppiVar7;" return identifier ;) })) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) }))) })) (if_statement "if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000df4b0;" goto statement_identifier ;) })) }) (else_clause "else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" else (compound_statement "{\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" { (if_statement "if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" if (parenthesized_expression "(**(int **)(iVar23 + -0x7bf8) != 0)" ( (binary_expression "**(int **)(iVar23 + -0x7bf8) != 0" (pointer_expression "**(int **)(iVar23 + -0x7bf8)" * (pointer_expression "*(int **)(iVar23 + -0x7bf8)" * (cast_expression "(int **)(iVar23 + -0x7bf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7bf8)" ( (binary_expression "iVar23 + -0x7bf8" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" { (expression_statement "iVar3 = glob_dirscan(pcVar29,0x2f);" (assignment_expression "iVar3 = glob_dirscan(pcVar29,0x2f)" identifier = (call_expression "glob_dirscan(pcVar29,0x2f)" identifier (argument_list "(pcVar29,0x2f)" ( identifier , number_literal )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) goto LAB_000deb88;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000deb88;" goto statement_identifier ;)) })) (expression_statement "iVar24 = iVar3 - (int)pcVar29;" (assignment_expression "iVar24 = iVar3 - (int)pcVar29" identifier = (binary_expression "iVar3 - (int)pcVar29" identifier - (cast_expression "(int)pcVar29" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar5 = iVar24 + 1;" (assignment_expression "uVar5 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" identifier = (cast_expression "(int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" (parenthesized_expression "(**(code **)(iVar23 + -0x60a4))" ( (pointer_expression "**(code **)(iVar23 + -0x60a4)" * (pointer_expression "*(code **)(iVar23 + -0x60a4)" * (cast_expression "(code **)(iVar23 + -0x60a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x60a4)" ( (binary_expression "iVar23 + -0x60a4" identifier + number_literal) ))))) )) (argument_list "(iVar24 + 2)" ( (binary_expression "iVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" if (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" ( (binary_expression "ppppppiVar21 == (int ******)0x0" identifier == (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (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 *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" { (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return (int *******)0x0;" return (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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 *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5fac)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5fac" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21,pcVar29,uVar5)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(char *)((int)ppppppiVar21 + uVar5) = '\0';" (assignment_expression "*(char *)((int)ppppppiVar21 + uVar5) = '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + uVar5)" * (cast_expression "(char *)((int)ppppppiVar21 + uVar5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + uVar5)" ( (binary_expression "(int)ppppppiVar21 + uVar5" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar26 = (char *)(iVar3 + 1);" (assignment_expression "pcVar26 = (char *)(iVar3 + 1)" identifier = (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) ;) (if_statement "if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000deb94;" goto statement_identifier ;) })) (expression_statement "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);" (assignment_expression "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" identifier = (call_expression "glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" identifier (argument_list "((char *)ppppppiVar21,(int)pcVar29)" ( (cast_expression "(char *)ppppppiVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)pcVar29" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (if_statement "if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" if (parenthesized_expression "(iVar23 == 1)" ( (binary_expression "iVar23 == 1" identifier == number_literal) )) (compound_statement "{\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" { (expression_statement "uVar14 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar14 = (uint)__quote & 0xfffffffe" identifier = (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;" (assignment_expression "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400" (pointer_expression "*(uint *)(puVar8 + -0x44)" * (cast_expression "(uint *)(puVar8 + -0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) )))) = (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" if (parenthesized_expression "(((uint)__quote & 0x400) == 0)" ( (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44)" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar8 + -0x44)" * (cast_expression "(undefined4 *)(puVar8 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" else (compound_statement "{\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" { (if_statement "if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" if (parenthesized_expression "(*(char *)ppppppiVar21 == '*')" ( (binary_expression "*(char *)ppppppiVar21 == '*'" (pointer_expression "*(char *)ppppppiVar21" * (cast_expression "(char *)ppppppiVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }" { (if_statement "if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" if (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 1) == '*')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 1) == '*'" (pointer_expression "*(char *)((int)ppppppiVar21 + 1)" * (cast_expression "(char *)((int)ppppppiVar21 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 1)" ( (binary_expression "(int)ppppppiVar21 + 1" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }" { (expression_statement "ppppppiVar10 = ppppppiVar21;" (assignment_expression "ppppppiVar10 = ppppppiVar21" identifier = identifier) ;) (if_statement "if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" if (parenthesized_expression "((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0'))" ( (binary_expression "(*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')" (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '/')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" * (cast_expression "(char *)((int)ppppppiVar21 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 2)" ( (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'/'" ' character ')) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '\0')" ( (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" * (cast_expression "(char *)((int)ppppppiVar21 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar21 + 2)" ( (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }" { (do_statement "do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');" do (compound_statement "{\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              }" { (expression_statement "ppppppiVar19 = ppppppiVar10;" (assignment_expression "ppppppiVar19 = ppppppiVar10" identifier = identifier) ;) (expression_statement "ppppppiVar10 = ppppppiVar19;" (assignment_expression "ppppppiVar10 = ppppppiVar19" identifier = identifier) ;) (if_statement "if (*(char *)((int)ppppppiVar19 + 1) != '*') break;" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 1) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 1) != '*'" (pointer_expression "*(char *)((int)ppppppiVar19 + 1)" * (cast_expression "(char *)((int)ppppppiVar19 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 1)" ( (binary_expression "(int)ppppppiVar19 + 1" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'*'" ' character ')) )) (break_statement "break;" break ;)) (if_statement "if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) == '/')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" * (cast_expression "(char *)((int)ppppppiVar19 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 2)" ( (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }" { (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3)" identifier = (cast_expression "(int ******)((int)ppppppiVar19 + 3)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppiVar19 + 3)" ( (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "cVar2 = *(char *)((int)ppppppiVar19 + 3);" (assignment_expression "cVar2 = *(char *)((int)ppppppiVar19 + 3)" identifier = (pointer_expression "*(char *)((int)ppppppiVar19 + 3)" * (cast_expression "(char *)((int)ppppppiVar19 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 3)" ( (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (while_statement "while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" while (parenthesized_expression "(cVar2 == '/')" ( (binary_expression "cVar2 == '/'" identifier == (char_literal "'/'" ' character ')) )) (compound_statement "{\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" { (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1)" identifier = (cast_expression "(int ******)((int)ppppppiVar10 + 1)" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppiVar10 + 1)" ( (binary_expression "(int)ppppppiVar10 + 1" (cast_expression "(int)ppppppiVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" identifier = (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) })) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" identifier = identifier) ;) (if_statement "if (cVar2 == '\0') break;" if (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) }) (else_clause "else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" else (if_statement "if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" if (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) != '\0')" ( (binary_expression "*(char *)((int)ppppppiVar19 + 2) != '\0'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" * (cast_expression "(char *)((int)ppppppiVar19 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar19 + 2)" ( (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" { (expression_statement "cVar2 = *(char *)ppppppiVar19;" (assignment_expression "cVar2 = *(char *)ppppppiVar19" identifier = (pointer_expression "*(char *)ppppppiVar19" * (cast_expression "(char *)ppppppiVar19" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (goto_statement "goto LAB_000dedb8;" goto statement_identifier ;) })))) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" identifier = identifier) ;) }) while (parenthesized_expression "(*(char *)ppppppiVar10 == '*')" ( (binary_expression "*(char *)ppppppiVar10 == '*'" (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'*'" ' character ')) )) ;) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" identifier = (pointer_expression "*(char *)ppppppiVar10" * (cast_expression "(char *)ppppppiVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (labeled_statement "LAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;" statement_identifier : (expression_statement "*(int *)(puVar8 + -0x40) = (int)cVar2;" (assignment_expression "*(int *)(puVar8 + -0x40) = (int)cVar2" (pointer_expression "*(int *)(puVar8 + -0x40)" * (cast_expression "(int *)(puVar8 + -0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) = (cast_expression "(int)cVar2" ( (type_descriptor "int" primitive_type) ) identifier)) ;)) (expression_statement "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);" (assignment_expression "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0)" (pointer_expression "*(uint *)(puVar8 + -0x48)" * (cast_expression "(uint *)(puVar8 + -0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = (call_expression "(uint)(cVar2 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(cVar2 == 0)" ( (binary_expression "cVar2 == 0" identifier == number_literal) )))) ;) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" identifier = (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar16)" ( identifier )))) ;) (expression_statement "uVar14 = uVar14 | 0x210;" (assignment_expression "uVar14 = uVar14 | 0x210" identifier = (binary_expression "uVar14 | 0x210" identifier | number_literal)) ;) (if_statement "if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;" if (parenthesized_expression "(*(int *)(puVar8 + -0x40) == 0)" ( (binary_expression "*(int *)(puVar8 + -0x40) == 0" (pointer_expression "*(int *)(puVar8 + -0x40)" * (cast_expression "(int *)(puVar8 + -0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000dee6c;" goto statement_identifier ;)) }) (else_clause "else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" else (compound_statement "{\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" else (compound_statement "{\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" { (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" * (cast_expression "(undefined4 *)(puVar8 + -0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "uVar20 = uVar5;" (assignment_expression "uVar20 = uVar5" identifier = identifier) ;) (expression_statement "uVar30 = uVar5;" (assignment_expression "uVar30 = uVar5" identifier = identifier) ;) (if_statement "if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" if (parenthesized_expression "(3 < (int)uVar5)" ( (binary_expression "3 < (int)uVar5" number_literal < (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" { (if_statement "if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;" if (parenthesized_expression "(((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'))" ( (binary_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" (parenthesized_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'))" ( (binary_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 1)" ( (binary_expression "uVar5 - 1" identifier - number_literal) ))) )))) != (char_literal "'/'" ' character ')) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 2))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 2))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 2)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 2)" ( (binary_expression "uVar5 - 2" identifier - number_literal) ))) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" ( (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3))" * (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 3))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 3))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 3)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 3)" ( (binary_expression "uVar5 - 3" identifier - number_literal) ))) )))) != (char_literal "'*'" ' character ')) ))) )) (goto_statement "goto LAB_000dee6c;" goto statement_identifier ;)) (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6))" identifier = (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 6))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 6)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 6)" ( (binary_expression "uVar5 - 6" identifier - number_literal) ))) )))) ;) (while_statement "while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" while (parenthesized_expression "((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)))" ( (parenthesized_expression "(uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))" ( (comma_expression "uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar18 = uVar30" identifier = identifier) , (comma_expression "uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar30 = uVar18" identifier = identifier) , (binary_expression "pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (binary_expression "pcVar29[2] == '/'" (subscript_expression "pcVar29[2]" identifier [ number_literal ]) == (char_literal "'/'" ' character ')) && (parenthesized_expression "(uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" ( (comma_expression "uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar30 = uVar18 - 3" identifier = (binary_expression "uVar18 - 3" identifier - number_literal)) , (comma_expression "uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar20 = uVar18" identifier = identifier) , (binary_expression "3 < (int)uVar30" number_literal < (cast_expression "(int)uVar30" ( (type_descriptor "int" primitive_type) ) identifier)))) ))))) )) )) (compound_statement "{\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" { (if_statement "if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;" if (parenthesized_expression "((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))" ( (binary_expression "(pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" (parenthesized_expression "(pcVar29[1] != '*')" ( (binary_expression "pcVar29[1] != '*'" (subscript_expression "pcVar29[1]" identifier [ number_literal ]) != (char_literal "'*'" ' character ')) )) || (parenthesized_expression "(cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" ( (comma_expression "cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "cVar2 = *pcVar29" identifier = (pointer_expression "*pcVar29" * identifier)) , (comma_expression "pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "pcVar29 = pcVar29 + -3" identifier = (binary_expression "pcVar29 + -3" identifier + number_literal)) , (binary_expression "cVar2 != '*'" identifier != (char_literal "'*'" ' character ')))) ))) )) (break_statement "break;" break ;)) })) })) (expression_statement "bVar1 = uVar30 != uVar5;" (assignment_expression "bVar1 = uVar30 != uVar5" identifier = (binary_expression "uVar30 != uVar5" identifier != identifier)) ;) (expression_statement "uVar5 = uVar20;" (assignment_expression "uVar5 = uVar20" identifier = identifier) ;) (if_statement "if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }" if (parenthesized_expression "((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))))" ( (binary_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" (parenthesized_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*'))" ( (binary_expression "((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')" (parenthesized_expression "((bVar1) && (4 < uVar20))" ( (binary_expression "(bVar1) && (4 < uVar20)" (parenthesized_expression "(bVar1)" ( identifier )) && (parenthesized_expression "(4 < uVar20)" ( (binary_expression "4 < uVar20" number_literal < identifier) ))) )) && (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" ( (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) ))) )) && (parenthesized_expression "((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" ( (parenthesized_expression "(*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')" (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n          uVar5 = uVar20 - 3;\n        }" { (expression_statement "uVar5 = uVar20 - 3;" (assignment_expression "uVar5 = uVar20 - 3" identifier = (binary_expression "uVar20 - 3" identifier - number_literal)) ;) })) }))) (labeled_statement "LAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" statement_identifier : (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1))" identifier = (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" ( (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 - 1)" ( (binary_expression "uVar5 - 1" identifier - number_literal) ))) )))) ;)) (if_statement "if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }" if (parenthesized_expression "(*pcVar29 == '/')" ( (binary_expression "*pcVar29 == '/'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n        *pcVar29 = '\0';\n      }" { (expression_statement "*pcVar29 = '\0';" (assignment_expression "*pcVar29 = '\0'" (pointer_expression "*pcVar29" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) })) (expression_statement "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);" (assignment_expression "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800)" identifier = (call_expression "glob_filename(ppppppiVar16,uVar14 | 0x800)" identifier (argument_list "(ppppppiVar16,uVar14 | 0x800)" ( identifier , (binary_expression "uVar14 | 0x800" identifier | number_literal) )))) ;) (expression_statement "*(int *)(puVar8 + -0x30) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x30) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x30)" * (cast_expression "(int *)(puVar8 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" { (labeled_statement "LAB_000df274:\n        iVar3 = 1;" statement_identifier : (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;)) (expression_statement "ppppppiVar21 = *pppppppiVar7;" (assignment_expression "ppppppiVar21 = *pppppppiVar7" identifier = (pointer_expression "*pppppppiVar7" * identifier)) ;) (expression_statement "pppppppiVar4 = pppppppiVar7;" (assignment_expression "pppppppiVar4 = pppppppiVar7" identifier = identifier) ;) (while_statement "while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" while (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" ( (binary_expression "ppppppiVar21 != (int ******)0x0" identifier != (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" { (expression_statement "pppppppiVar4 = pppppppiVar4 + 1;" (assignment_expression "pppppppiVar4 = pppppppiVar4 + 1" identifier = (binary_expression "pppppppiVar4 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "ppppppiVar21 = *pppppppiVar4;" (assignment_expression "ppppppiVar21 = *pppppppiVar4" identifier = (pointer_expression "*pppppppiVar4" * identifier)) ;) })) (goto_statement "goto LAB_000df2ac;" goto statement_identifier ;) })) (if_statement "if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" if (parenthesized_expression "(iVar24 == *(int *)(iVar23 + -0x7174))" ( (binary_expression "iVar24 == *(int *)(iVar23 + -0x7174)" identifier == (pointer_expression "*(int *)(iVar23 + -0x7174)" * (cast_expression "(int *)(iVar23 + -0x7174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return *(int ********)(puVar8 + -0x30);" return (pointer_expression "*(int ********)(puVar8 + -0x30)" * (cast_expression "(int ********)(puVar8 + -0x30)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ;) })) (expression_statement "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);" (assignment_expression "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar8 + -0x30)" * (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 **)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (return_statement "return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);" return (pointer_expression "*(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" * (cast_expression "(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" ( (type_descriptor "int ********" primitive_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 "(*(int *)(puVar8 + -0x50) + -0x7174)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7174" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" if (parenthesized_expression "(*(int *)(puVar8 + -0x48) != 0)" ( (binary_expression "*(int *)(puVar8 + -0x48) != 0" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" { (if_statement "if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" if (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) )) (compound_statement "{\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" { (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" identifier = (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000def94;" goto statement_identifier ;) })) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" * (cast_expression "(undefined4 **)(puVar8 + -0x30)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" if (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" ( (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" * (cast_expression "(undefined4 *)(puVar8 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *(int *)(puVar8 + -0x48);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x48)" identifier = (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) ))))) ;) (expression_statement "ppppppiVar21 = (int ******)0x0;" (assignment_expression "ppppppiVar21 = (int ******)0x0" identifier = (cast_expression "(int ******)0x0" ( (type_descriptor "int ******" primitive_type (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000deb94;" goto statement_identifier ;) })) })) (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" identifier = (pointer_expression "*(int *)(iVar23 + -0x7f90)" * (cast_expression "(int *)(iVar23 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x7f90)" ( (binary_expression "iVar23 + -0x7f90" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000def94:\n      iVar17 = 1;" statement_identifier : (expression_statement "iVar17 = 1;" (assignment_expression "iVar17 = 1" identifier = number_literal) ;)) (expression_statement "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;" (assignment_expression "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18" (pointer_expression "*(int *)(puVar8 + -0x2c)" * (cast_expression "(int *)(puVar8 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x2c)" ( (binary_expression "puVar8 + -0x2c" identifier + number_literal) )))) = (binary_expression "iVar24 + -0x5e18" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);" (assignment_expression "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960)" (pointer_expression "*(undefined4 *)(puVar8 + -0x40)" * (cast_expression "(undefined4 *)(puVar8 + -0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(iVar23 + -0x6960)" * (cast_expression "(undefined4 *)(iVar23 + -0x6960)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x6960)" ( (binary_expression "iVar23 + -0x6960" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;" (assignment_expression "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(puVar8 + -0x34)" * (cast_expression "(int *)(puVar8 + -0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x34)" ( (binary_expression "puVar8 + -0x34" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(iVar23 + -0x6990)" * (cast_expression "(int *)(iVar23 + -0x6990)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x6990)" ( (binary_expression "iVar23 + -0x6990" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;" statement_identifier : (expression_statement "uVar5 = (uint)__quote & 0xfffffdee;" (assignment_expression "uVar5 = (uint)__quote & 0xfffffdee" identifier = (binary_expression "(uint)__quote & 0xfffffdee" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;)) (if_statement "if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" if (parenthesized_expression "((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*'))" ( (binary_expression "(*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "(*(int *)(puVar8 + -0x44) == 0)" ( (binary_expression "*(int *)(puVar8 + -0x44) == 0" (pointer_expression "*(int *)(puVar8 + -0x44)" * (cast_expression "(int *)(puVar8 + -0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x44)" ( (binary_expression "puVar8 + -0x44" identifier + number_literal) )))) == number_literal) )) || (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) (compound_statement "{\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }" { (if_statement "if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;" if (parenthesized_expression "((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0'))" ( (binary_expression "(*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')" (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 1) != '\0')" ( (binary_expression "*(char *)(iVar3 + 1) != '\0'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000defd0;" goto statement_identifier ;)) }) (else_clause "else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" else (compound_statement "{\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" { (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }" if (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" ( (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) && (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" ( (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          uVar5 = uVar5 | 0x210;\n        }" { (expression_statement "uVar5 = uVar5 | 0x210;" (assignment_expression "uVar5 = uVar5 | 0x210" identifier = (binary_expression "uVar5 | 0x210" identifier | number_literal)) ;) })) (if_statement "if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" if (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" { (labeled_statement "LAB_000defd0:\n          uVar5 = uVar5 | 0x100;" statement_identifier : (expression_statement "uVar5 = uVar5 | 0x100;" (assignment_expression "uVar5 = uVar5 | 0x100" identifier = (binary_expression "uVar5 | 0x100" identifier | number_literal)) ;)) (expression_statement "pcVar29 = *(char **)(puVar8 + -0x2c);" (assignment_expression "pcVar29 = *(char **)(puVar8 + -0x2c)" identifier = (pointer_expression "*(char **)(puVar8 + -0x2c)" * (cast_expression "(char **)(puVar8 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x2c)" ( (binary_expression "puVar8 + -0x2c" identifier + number_literal) ))))) ;) })) }))) (expression_statement "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);" (assignment_expression "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(puVar8 + -0x40))" ( (pointer_expression "**(code **)(puVar8 + -0x40)" * (pointer_expression "*(code **)(puVar8 + -0x40)" * (cast_expression "(code **)(puVar8 + -0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x40)" ( (binary_expression "puVar8 + -0x40" identifier + number_literal) ))))) )) (argument_list "(pcVar26,pcVar29,uVar5)" ( identifier , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000df26c;" if (parenthesized_expression "(piVar15 == (int *)0x0)" ( (binary_expression "piVar15 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000df26c;" goto statement_identifier ;)) (if_statement "if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;" if (parenthesized_expression "(piVar15 == *(int **)(iVar23 + -0x7174))" ( (binary_expression "piVar15 == *(int **)(iVar23 + -0x7174)" identifier == (pointer_expression "*(int **)(iVar23 + -0x7174)" * (cast_expression "(int **)(iVar23 + -0x7174)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7174)" ( (binary_expression "iVar23 + -0x7174" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000df004;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10;" (assignment_expression "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10" (pointer_expression "*(uint *)(puVar8 + -0x38)" * (cast_expression "(uint *)(puVar8 + -0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x38)" ( (binary_expression "puVar8 + -0x38" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x10" identifier & number_literal)) ;) (if_statement "if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" if (parenthesized_expression "(((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))))" ( (binary_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" (parenthesized_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          )" ( (binary_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')" (parenthesized_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*'))" ( (binary_expression "((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "((uVar5 & 0x10) == 0)" ( (binary_expression "(uVar5 & 0x10) == 0" (parenthesized_expression "(uVar5 & 0x10)" ( (binary_expression "uVar5 & 0x10" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "(*(char *)(iVar3 + 2) != '*')" ( (binary_expression "*(char *)(iVar3 + 2) != '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) ))) )) || (parenthesized_expression "((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" ( (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))" ( (binary_expression "*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')" (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(*(char *)(iVar3 + 3) != '/')" ( (binary_expression "*(char *)(iVar3 + 3) != '/'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'/'" ' character ')) ))) )) ))) )) (compound_statement "{\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }" { (expression_statement "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" (parenthesized_expression "(**(code **)(puVar8 + -0x34))" ( (pointer_expression "**(code **)(puVar8 + -0x34)" * (pointer_expression "*(code **)(puVar8 + -0x34)" * (cast_expression "(code **)(puVar8 + -0x34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x34)" ( (binary_expression "puVar8 + -0x34" identifier + number_literal) ))))) )) (argument_list "(*puVar31,piVar15,__quote)" ( (pointer_expression "*puVar31" * identifier) , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000df0a0:\n        iVar24 = 0;" statement_identifier : (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;)) (if_statement "if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" if (parenthesized_expression "(*piVar11 != 0)" ( (binary_expression "*piVar11 != 0" (pointer_expression "*piVar11" * identifier) != number_literal) )) (compound_statement "{\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" { (labeled_statement "LAB_000df0ac:\n          iVar24 = 0;" statement_identifier : (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;)) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" identifier = identifier) ;) (do_statement "do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);" do (compound_statement "{\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          }" { (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*piVar13 != 0)" ( (binary_expression "*piVar13 != 0" (pointer_expression "*piVar13" * identifier) != number_literal) )) ;) })) }) (else_clause "else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" else (compound_statement "{\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" { (expression_statement "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" * (cast_expression "(uint *)(puVar8 + -0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x100" identifier & number_literal)) ;) (expression_statement "piVar11 = piVar15;" (assignment_expression "piVar11 = piVar15" identifier = identifier) ;) (if_statement "if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;" if (parenthesized_expression "((uVar5 & 0x100) == 0)" ( (binary_expression "(uVar5 & 0x100) == 0" (parenthesized_expression "(uVar5 & 0x100)" ( (binary_expression "uVar5 & 0x100" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" * (cast_expression "(uint *)(puVar8 + -0x3c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" if (parenthesized_expression "(((uint)__quote & 0x100) != 0)" ( (binary_expression "((uint)__quote & 0x100) != 0" (parenthesized_expression "((uint)__quote & 0x100)" ( (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" { (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (if_statement "if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" if (parenthesized_expression "((char *)*piVar15 != (char *)0x0)" ( (binary_expression "(char *)*piVar15 != (char *)0x0" (cast_expression "(char *)*piVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier)) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" { (expression_statement "piVar13 = piVar15;" (assignment_expression "piVar13 = piVar15" identifier = identifier) ;) (if_statement "if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" if (parenthesized_expression "(*(char *)*piVar15 == '\0')" ( (binary_expression "*(char *)*piVar15 == '\0'" (pointer_expression "*(char *)*piVar15" * (cast_expression "(char *)*piVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar15" * identifier))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" { (do_statement "do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');" do (compound_statement "{\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            }" { (expression_statement "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;" (assignment_expression "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar29 = (char *)piVar13[1];" (assignment_expression "pcVar29 = (char *)piVar13[1]" identifier = (cast_expression "(char *)piVar13[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar13[1]" identifier [ number_literal ]))) ;) (if_statement "if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" if (parenthesized_expression "(pcVar29 == (char *)0x0)" ( (binary_expression "pcVar29 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" { (expression_statement "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];" (assignment_expression "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)]" (pointer_expression "*piVar15" * identifier) = (subscript_expression "piVar15[*(int *)(puVar8 + -0x3c)]" identifier [ (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) ])) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*pcVar29 == '\0')" ( (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (expression_statement "piVar13 = piVar15 + iVar24;" (assignment_expression "piVar13 = piVar15 + iVar24" identifier = (binary_expression "piVar15 + iVar24" identifier + identifier)) ;) (do_statement "do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);" do (compound_statement "{\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            }" { (expression_statement "iVar12 = *piVar13;" (assignment_expression "iVar12 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "piVar13[-iVar24] = iVar12;" (assignment_expression "piVar13[-iVar24] = iVar12" (subscript_expression "piVar13[-iVar24]" identifier [ (unary_expression "-iVar24" - identifier) ]) = identifier) ;) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) ;) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" * (cast_expression "(undefined4 *)(puVar8 + -0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_000df0a0;" goto statement_identifier ;) })) (goto_statement "goto LAB_000df0ac;" goto statement_identifier ;) })) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);" (assignment_expression "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" identifier = (call_expression "(**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" ( (pointer_expression "**(code **)(iVar23 + -0x6098)" * (pointer_expression "*(code **)(iVar23 + -0x6098)" * (cast_expression "(code **)(iVar23 + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x6098)" ( (binary_expression "iVar23 + -0x6098" identifier + number_literal) ))))) )) (argument_list "(pppppppiVar7,(iVar17 + iVar24) * 4)" ( identifier , (binary_expression "(iVar17 + iVar24) * 4" (parenthesized_expression "(iVar17 + iVar24)" ( (binary_expression "iVar17 + iVar24" identifier + identifier) )) * number_literal) )))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar8 + -0x48) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x48) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *piVar11;" (assignment_expression "iVar3 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "piVar15 = piVar11;" (assignment_expression "piVar15 = piVar11" identifier = identifier) ;) (while_statement "while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" while (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" { (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" identifier = (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = *piVar15;" (assignment_expression "iVar3 = *piVar15" identifier = (pointer_expression "*piVar15" * identifier)) ;) })) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);" statement_identifier : (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;)) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df2c8;" goto statement_identifier ;)) (goto_statement "goto LAB_000df274;" goto statement_identifier ;) })) (expression_statement "iVar24 = *piVar11;" (assignment_expression "iVar24 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (if_statement "if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" { (expression_statement "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;" (assignment_expression "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4" identifier = (binary_expression "*(int *)(puVar8 + -0x48) + iVar17 * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) + (binary_expression "iVar17 * 4" identifier * number_literal))) ;) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" identifier = identifier) ;) (do_statement "do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);" do (compound_statement "{\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        }" { (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" identifier = (binary_expression "piVar13 + 1" identifier + number_literal)) ;) (expression_statement "iVar17 = iVar17 + 1;" (assignment_expression "iVar17 = iVar17 + 1" identifier = (binary_expression "iVar17 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(iVar12 + -4) = iVar24;" (assignment_expression "*(int *)(iVar12 + -4) = iVar24" (pointer_expression "*(int *)(iVar12 + -4)" * (cast_expression "(int *)(iVar12 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -4)" ( (binary_expression "iVar12 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar24 = *piVar13;" (assignment_expression "iVar24 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "iVar12 = iVar12 + 4;" (assignment_expression "iVar12 = iVar12 + 4" identifier = (binary_expression "iVar12 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) ;) })) (expression_statement "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" * (cast_expression "(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" ( (binary_expression "*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" * (cast_expression "(int *)(puVar8 + -0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) )))) + (binary_expression "(iVar17 + 0x3fffffff) * 4" (parenthesized_expression "(iVar17 + 0x3fffffff)" ( (binary_expression "iVar17 + 0x3fffffff" identifier + number_literal) )) * number_literal)) )))) = number_literal) ;) (if_statement "if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" if (parenthesized_expression "(piVar15 == piVar11)" ( (binary_expression "piVar15 == piVar11" identifier == identifier) )) (compound_statement "{\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }" { (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" if (parenthesized_expression "(*(int *)(puVar8 + -0x38) != 0)" ( (binary_expression "*(int *)(puVar8 + -0x38) != 0" (pointer_expression "*(int *)(puVar8 + -0x38)" * (cast_expression "(int *)(puVar8 + -0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x38)" ( (binary_expression "puVar8 + -0x38" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" { (if_statement "if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;" if (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" ( (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) != (char_literal "'*'" ' character ')) )) (goto_statement "goto LAB_000df14c;" goto statement_identifier ;)) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) (if_statement "if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" if (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" ( (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" * (cast_expression "(char *)(iVar3 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 2)" ( (binary_expression "iVar3 + 2" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" { (if_statement "if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;" if (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0')" ( (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" * (cast_expression "(char *)(iVar3 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 3)" ( (binary_expression "iVar3 + 3" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000df14c;" goto statement_identifier ;)) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;) })) })) }) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" else (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" { (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);" statement_identifier : (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" identifier = (pointer_expression "*(int *)(puVar8 + -0x3c)" * (cast_expression "(int *)(puVar8 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3c)" ( (binary_expression "puVar8 + -0x3c" identifier + number_literal) ))))) ;)) }))) (expression_statement "pppppppiVar7 = *(int ********)(puVar8 + -0x48);" (assignment_expression "pppppppiVar7 = *(int ********)(puVar8 + -0x48)" identifier = (pointer_expression "*(int ********)(puVar8 + -0x48)" * (cast_expression "(int ********)(puVar8 + -0x48)" ( (type_descriptor "int ********" primitive_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 "(puVar8 + -0x48)" ( (binary_expression "puVar8 + -0x48" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 == 0) goto LAB_000df004;" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000df004;" goto statement_identifier ;)) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" identifier = (pointer_expression "*(int **)(puVar8 + -0x30)" * (cast_expression "(int **)(puVar8 + -0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x30)" ( (binary_expression "puVar8 + -0x30" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000df34c;" goto statement_identifier ;) })) (if_statement "if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" if (parenthesized_expression "(*(char *)(iVar3 + 1) == '\0')" ( (binary_expression "*(char *)(iVar3 + 1) == '\0'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" { (expression_statement "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" identifier = (cast_expression "(int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" ( (type_descriptor "int *******" primitive_type (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 *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x6098)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x6098" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7,8)" ( identifier , number_literal ))))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;" if (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" ( (binary_expression "pppppppiVar7 == (int *******)0x0" identifier == (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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_000df3a4;" goto statement_identifier ;)) (if_statement "if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000df634;" goto statement_identifier ;) })) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (if_statement "if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" if (parenthesized_expression "(iVar23 == 2)" ( (binary_expression "iVar23 == 2" identifier == number_literal) )) (compound_statement "{\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" { (if_statement "if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" if (parenthesized_expression "(((uint)__quote & 0x800) == 0)" ( (binary_expression "((uint)__quote & 0x800) == 0" (parenthesized_expression "((uint)__quote & 0x800)" ( (binary_expression "(uint)__quote & 0x800" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n          iVar3 = 1;\n        }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" else (compound_statement "{\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" { (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" identifier (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" identifier = (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier )))) ;) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) }))) (goto_statement "goto LAB_000df634;" goto statement_identifier ;) })) (expression_statement "iVar24 = iVar24 + 2;" (assignment_expression "iVar24 = iVar24 + 2" identifier = (binary_expression "iVar24 + 2" identifier + number_literal)) ;) (goto_statement "goto LAB_000df638;" goto statement_identifier ;) })) (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" identifier (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" ( (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pppppppiVar7)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe" identifier = (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" identifier = identifier) ;) (if_statement "if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" if (parenthesized_expression "(((uint)__quote & 0x400) != 0)" ( (binary_expression "((uint)__quote & 0x400) != 0" (parenthesized_expression "((uint)__quote & 0x400)" ( (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" { (if_statement "if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" if (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" ( (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" * (cast_expression "(char *)(iVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 1)" ( (binary_expression "iVar3 + 1" identifier + number_literal) )))) == (char_literal "'*'" ' character ')) )) (compound_statement "{\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000df42c;" goto statement_identifier ;) })) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" identifier = identifier) ;) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" identifier = identifier) ;) (goto_statement "goto LAB_000debcc;" goto statement_identifier ;) })) (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" identifier = (cast_expression "(int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" ( (type_descriptor "int *******" primitive_type (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "glob_vector(pcVar26,ppppppiVar21,uVar30)" identifier (argument_list "(pcVar26,ppppppiVar21,uVar30)" ( identifier , identifier , identifier ))))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }" if (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" ( (binary_expression "pppppppiVar7 != (int *******)0x0" identifier != (cast_expression "(int *******)0x0" ( (type_descriptor "int *******" primitive_type (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      iVar3 = 1;\n      goto LAB_000debec;\n    }" { (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000debec;" goto statement_identifier ;) })) }))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" ( (pointer_expression "**(code **)(iVar23 + -0x5f94)" * (pointer_expression "*(code **)(iVar23 + -0x5f94)" * (cast_expression "(code **)(iVar23 + -0x5f94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x5f94)" ( (binary_expression "iVar23 + -0x5f94" identifier + number_literal) ))))) )) (argument_list "(ppppppiVar21)" ( identifier ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cfc)" * (cast_expression "(int **)(iVar23 + -0x7cfc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" statement_identifier : (if_statement "if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" { (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" else (compound_statement "{\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" { (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" ( (pointer_expression "**(code **)(iVar23 + -0x7ce8)" * (pointer_expression "*(code **)(iVar23 + -0x7ce8)" * (cast_expression "(code **)(iVar23 + -0x7ce8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7ce8)" ( (binary_expression "iVar23 + -0x7ce8" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" ( (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" * (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" * (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cfc)" ( (binary_expression "iVar23 + -0x7cfc" identifier + number_literal) ))))) ))) ;) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" identifier = (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) ))))) ;) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" identifier = (pointer_expression "*(int **)(iVar23 + -0x7cf8)" * (cast_expression "(int **)(iVar23 + -0x7cf8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf8)" ( (binary_expression "iVar23 + -0x7cf8" identifier + number_literal) ))))) ;) })))) (if_statement "if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" if (parenthesized_expression "(*piVar15 == 0)" ( (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" * identifier) == number_literal) )) (compound_statement "{\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }" { (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" identifier = (pointer_expression "*(code **)(iVar23 + -0x7d20)" * (cast_expression "(code **)(iVar23 + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7d20)" ( (binary_expression "iVar23 + -0x7d20" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" else (compound_statement "{\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" { (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" ( (pointer_expression "**(code **)(iVar23 + -0x7cf4)" * (pointer_expression "*(code **)(iVar23 + -0x7cf4)" * (cast_expression "(code **)(iVar23 + -0x7cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x7cf4)" ( (binary_expression "iVar23 + -0x7cf4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" identifier = (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" * (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" ( (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" * (cast_expression "(int *)(puVar8 + -0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x50)" ( (binary_expression "puVar8 + -0x50" identifier + number_literal) )))) + number_literal) ))))) ;) }))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "()" ( ))) ;) (return_statement "return pppppppiVar7;" return identifier ;) })))
(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 IDENT) )))))))))) (compound_statement { (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 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 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 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 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 * (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 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 * (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 * (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 * (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 (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (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 IDENT ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (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 * (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 * 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 (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 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 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 * (array_declarator IDENT [ LIT ]))))))) ;) (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 * (array_declarator IDENT [ LIT ]))))))) ;) (declaration TYPE 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) ;) (if_statement if (parenthesized_expression ( (binary_expression (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 *)) ) IDENT)) )) (argument_list ( LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_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 (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 = (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression 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 (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * 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 *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (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 * (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)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 *)))))))) ) (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) ;) (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) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (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 * (abstract_pointer_declarator *))))))) ) IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * 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 *))))))) ) 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)) ;) (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 * (abstract_pointer_declarator *)))))))) ) (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + 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))) ;) (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 *))))))) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (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)) ))))) ;) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = 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 = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + 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) ))))) ;) (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 = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * 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) ;) }) 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 *))))))) ) 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 ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (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 *)))))))) ) LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression 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 *))))))) ) 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 ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) * 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 (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 = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_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 *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + IDENT) ))))) ;) (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 * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (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)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (do_statement do (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 ( (pointer_expression * IDENT) ))) ;) (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 ))) ;) (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) ;) })) }))) }))) (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 *)))))))) ) (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 = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (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 IDENT + 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 *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (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 ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ 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) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ 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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ 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)) )) ;) (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 : (expression_statement (assignment_expression (subscript_expression IDENT [ 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)) ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_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 * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) }))) }))) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (compound_statement { (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 *)))))))) ) (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 = (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 = (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 *)))))))) ) (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (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 *)))))))) ) (call_expression IDENT (argument_list ( 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) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & 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 *)))))))) ) (call_expression IDENT (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 * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_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 *))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ IDENT ]))) ))) )) (argument_list ( ))))) ;) (return_statement return 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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = 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 * (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 = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (expression_statement (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (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 *)))))))) ) LIT)) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (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 * (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) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 *))))))) ) LIT)) ;) (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 ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (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 * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression 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 *)))))))) ) (cast_expression ( (type_descriptor TYPE) ) (unary_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 { (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 *)) ) IDENT)) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (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 = 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 * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) 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)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression 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 *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) ))) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression 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 IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto 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 ( ))) ;) (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 IDENT + LIT) )))) ;) (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 * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression 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 = (binary_expression IDENT + LIT)) ;) }))))) (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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (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 = 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) ))))) ;) (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 = (binary_expression IDENT | LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 *)) ) (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = 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) ))))) ;)) (labeled_statement statement_identifier : (do_statement do (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) ))))) ;) (do_statement do (compound_statement { (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 = 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 (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * IDENT) == LIT) && (binary_expression (subscript_expression IDENT [ LIT ]) == LIT)) )) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression 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 = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 * (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) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_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 IDENT + LIT) ))))) )) (argument_list ( 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 IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (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 ( (binary_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 { (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 (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (goto_statement goto statement_identifier ;) })) }))) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 (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 *))))))) ) 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 (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , (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) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( IDENT , IDENT , (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)) )) (compound_statement { (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 = 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)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) })) (goto_statement goto statement_identifier ;) })) }) (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 IDENT (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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) ))))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == 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)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT )))) , (binary_expression IDENT != LIT)) ))) )) (goto_statement goto 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 = (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) ))))) ;) }) while (parenthesized_expression ( BOOL )) ;)) })) (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 = IDENT) ;) }))) (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 ( 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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) 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 ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 *)))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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) + IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) + 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 = (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 *)))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (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 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 ;) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (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 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 { (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 *)))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression 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)) )) ;) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 { (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (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 * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression (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)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_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 = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression (pointer_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 ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (return_statement return IDENT ;) })) (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 ( IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != 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 (assignment_expression IDENT = IDENT) ;) })) (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 * (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) + IDENT) )))) ;) (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 *))))))) ) (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) ;) (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 *))))))) ) 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 ))) ;) })) }) (else_clause else (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 *))))))) ) 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 * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) (goto_statement goto 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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 * (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 ( 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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (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 (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 *))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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) ;) (goto_statement goto 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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (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 *)))))))) ) (parenthesized_expression ( (binary_expression (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 (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) ;) (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 (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 IDENT + LIT) ))) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression * IDENT))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + 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 *))))))) ) LIT)) ;) (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 { (while_statement while (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))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;) })) (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 * (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) ;) })) })) (goto_statement goto statement_identifier ;) })) }))) }))) (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 { (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 { (do_statement do (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression * IDENT))) ;) }) (else_clause else (compound_statement { (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)) ;) })) (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 ( (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))) ;) (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) ;) }))) (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 : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_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 *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (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 { (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) ;) })) (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 * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (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 *))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_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 *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (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 == LIT) )) (compound_statement { (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) ;) })) (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 ))) ;)) (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) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_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 * (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 ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * 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 *))))))) ) 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 , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == 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 *))))))) ) LIT)) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (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 *))))))) ) LIT)) ;) (return_statement return 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == 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 *))))))) ) 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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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) ))))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (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) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 = (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) )))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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 = (binary_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 *))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = 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 *))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) )))) ;) }))))) (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 IDENT (argument_list ( IDENT , IDENT , IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (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 != (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) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 *)))))))) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (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 IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( (binary_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 *))))))) ) 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + 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) ;) })) (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 ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (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) ))))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (char_literal ' character ')) )) (compound_statement { (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 ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' character ')) )) || (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 { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = 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) )))) != (char_literal ' character ')) )) (break_statement break ;)) (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 ' character ')) )) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + 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) ) IDENT) + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (break_statement break ;)) }) (else_clause else (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 IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (char_literal ' character ')) )) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (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 = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (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 (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 (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) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) )))) != (char_literal ' character ')) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) )))) != (char_literal ' character ')) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) )))) != (char_literal ' character ')) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) )))) ;) (while_statement while (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ))))) )) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (char_literal ' character ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression IDENT != (char_literal ' character ')))) ))) )) (break_statement break ;)) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( IDENT )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) && (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 = (binary_expression IDENT - LIT)) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT | LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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 ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement 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 *))))))) ) LIT)) )) (compound_statement { (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 ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return (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 *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return (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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) )) && (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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_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) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' character ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) )) && (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 = (binary_expression IDENT | LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' character ')) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' character ')) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' character ')) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (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) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) == (char_literal ' escape_sequence ')) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (unary_expression - IDENT) ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) 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) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) * LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * LIT)) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (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 ' character ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) )) (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) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) })) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (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 *)))))))) ) (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 ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (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 (assignment_expression IDENT = LIT) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (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 ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (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 *)))))))) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (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) ;) (goto_statement goto 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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) ))))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (return_statement return IDENT ;) })))
(function_definition "int ******* FUN_000dd618(int *******param_1,uint param_2)\n\n{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" (primitive_type "int") (pointer_declarator "******* FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "****** FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "***** FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "**** FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "*** FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "** FUN_000dd618(int *******param_1,uint param_2)" (* "*") (pointer_declarator "* FUN_000dd618(int *******param_1,uint param_2)" (* "*") (function_declarator "FUN_000dd618(int *******param_1,uint param_2)" (identifier "FUN_000dd618") (parameter_list "(int *******param_1,uint param_2)" (( "(") (parameter_declaration "int *******param_1" (primitive_type "int") (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 "uint param_2" (type_identifier "uint") (identifier "param_2")) () ")")))))))))) (compound_statement "{\n  bool bVar1;\n  char cVar2;\n  int iVar3;\n  int *******pppppppiVar4;\n  uint uVar5;\n  int *******pppppppiVar6;\n  int *******pppppppiVar7;\n  undefined1 *puVar8;\n  undefined4 uVar9;\n  int ******ppppppiVar10;\n  int *piVar11;\n  int iVar12;\n  int *piVar13;\n  uint uVar14;\n  int *piVar15;\n  int ******ppppppiVar16;\n  int iVar17;\n  uint uVar18;\n  int ******ppppppiVar19;\n  uint uVar20;\n  int ******ppppppiVar21;\n  int *******pppppppiVar22;\n  int iVar23;\n  int *******__quote;\n  int iVar24;\n  int *******pppppppiVar25;\n  int *******unaff_s2;\n  char *pcVar26;\n  int *******unaff_s3;\n  int *******pppppppiVar27;\n  int *******unaff_s4;\n  int *******unaff_s5;\n  int *******pppppppiVar28;\n  char *pcVar29;\n  int *******unaff_s6;\n  uint uVar30;\n  undefined4 *puVar31;\n  int *******unaff_s7;\n  undefined *puVar32;\n  code *pcVar33;\n  undefined1 *puVar34;\n  int ******unaff_s8;\n  code *pcVar35;\n  undefined1 auStack_360 [8];\n  undefined1 auStack_358 [8];\n  int ******ppppppiStack_350;\n  undefined1 *puStack_34c;\n  code *pcStack_348;\n  int *******pppppppiStack_340;\n  uint uStack_33c;\n  uint uStack_338;\n  code *pcStack_334;\n  uint uStack_330;\n  int iStack_32c;\n  undefined4 uStack_328;\n  int *******pppppppiStack_324;\n  uint uStack_320;\n  code *pcStack_31c;\n  int iStack_318;\n  int iStack_314;\n  int *******pppppppiStack_310;\n  uint uStack_30c;\n  int iStack_308;\n  int *******pppppppiStack_304;\n  undefined1 auStack_300 [164];\n  char *pcStack_25c;\n  int *******pppppppiStack_258;\n  int *******pppppppiStack_254;\n  int *******pppppppiStack_250;\n  int *******pppppppiStack_24c;\n  int *******pppppppiStack_248;\n  int *******pppppppiStack_244;\n  int *******pppppppiStack_240;\n  int *******pppppppiStack_23c;\n  int ******ppppppiStack_238;\n  code *pcStack_234;\n  code *pcStack_220;\n  int *******pppppppiStack_218;\n  int *******pppppppiStack_214;\n  int *******pppppppiStack_210;\n  code *pcStack_20c;\n  code *pcStack_1f8;\n  int *******pppppppiStack_1f0;\n  undefined4 uStack_1ec;\n  undefined4 uStack_1e8;\n  int *******pppppppiStack_1e4;\n  int *******pppppppiStack_1e0;\n  int *******pppppppiStack_1dc;\n  int *******pppppppiStack_1d8;\n  code *pcStack_1d4;\n  undefined *puStack_1c0;\n  int *******pppppppiStack_1b4;\n  int iStack_1b0;\n  int iStack_1ac;\n  int iStack_1a8;\n  uint uStack_1a4;\n  int *******pppppppiStack_1a0;\n  int *******pppppppiStack_19c;\n  int ******appppppiStack_198 [6];\n  uint uStack_180;\n  int *******pppppppiStack_f4;\n  int ******appppppiStack_b0 [6];\n  uint local_98;\n  int local_c;\n  \n  local_c = *(int *)PTR___stack_chk_guard_0015858c;\n  pppppppiVar7 = appppppiStack_b0;\n  if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }\n  if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }\n  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }\n  iVar3 = local_c;\n  puVar32 = PTR___stack_chk_fail_0015853c;\n  (*(code *)PTR___stack_chk_fail_0015853c)();\n  puStack_1c0 = puVar32 + 0x80e64;\n  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);\n  pppppppiVar25 = param_1;\n  iStack_1b0 = iVar3;\n  pppppppiStack_19c = param_1;\n  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }\nLAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }\n  pcVar33 = *(code **)(puStack_1c0 + -0x6004);\n  pcVar35 = FUN_000ddacc;\n  pppppppiVar25 = pppppppiStack_f4;\n  (*pcVar33)();\n  pcStack_1f8 = pcVar33 + 0x80a74;\n  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);\n  pppppppiStack_1e0 = pppppppiVar7;\n  pppppppiStack_1dc = pppppppiVar6;\n  pppppppiStack_1d8 = unaff_s2;\n  pcStack_1d4 = pcVar35;\n  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();\n  pppppppiVar7 = pppppppiVar25;\n  if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }\n  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }\n  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);\n  pcVar35 = glob_pattern_p;\n  (*pcVar33)();\n  pcStack_220 = pcVar33 + 0x808a8;\n  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);\n  pppppppiStack_210 = pppppppiVar25;\n  pcStack_20c = pcVar35;\n  iVar3 = (**(code **)(pcVar33 + 0x7a848))();\n  if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }\n  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }\n  pcVar33 = *(code **)(pcStack_220 + -0x6004);\n  pcVar35 = glob_vector;\n  pppppppiVar27 = pppppppiStack_214;\n  (*pcVar33)();\n  pcStack_348 = pcVar33 + 0x80714;\n  puVar34 = auStack_358;\n  puVar8 = auStack_358;\n  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);\n  __quote = (int *******)0x0;\n  pppppppiVar28 = unaff_s5;\n  pppppppiStack_304 = pppppppiVar22;\n  pppppppiStack_258 = pppppppiVar25;\n  pppppppiStack_254 = pppppppiVar6;\n  pppppppiStack_250 = unaff_s2;\n  pppppppiStack_24c = unaff_s3;\n  pppppppiStack_248 = unaff_s4;\n  pppppppiStack_244 = unaff_s5;\n  pppppppiStack_240 = unaff_s6;\n  pppppppiStack_23c = pppppppiVar4;\n  ppppppiStack_238 = unaff_s8;\n  pcStack_234 = pcVar35;\n  if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }\n  iStack_314 = 0;\n  uStack_30c = 0;\n  pppppppiVar25 = (int *******)0x0;\nLAB_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);\n  pcVar33 = pcStack_348;\n  puVar8 = puVar34;\n  if (iStack_314 != 0) goto LAB_000ddefc;\n  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);\n  if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  goto LAB_000de914;\ncode_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);\n  if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }\n  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);\n  if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }\n  unaff_s3 = (int *******)((int)unaff_s3 + 1);\n  iVar3 = (int)unaff_s3 * 4;\n  pppppppiVar6 = (int *******)*unaff_s4;\n  unaff_s2 = unaff_s2 + 1;\n  unaff_s4 = unaff_s4 + 1;\n  pppppppiVar22 = pppppppiVar25;\n  unaff_s5 = pppppppiVar27;\n  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;\n  goto LAB_000dd968;\nLAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;\n  if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\n  goto LAB_000de200;\ncode_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }\n  *pppppppiVar25 = (int ******)pppppppiStack_310;\n  pppppppiVar25[1] = *unaff_s6;\n  iStack_318 = iStack_318 + 1;\n  unaff_s6 = unaff_s6 + 1;\n  pppppppiStack_310 = pppppppiVar25;\n  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;\n  goto LAB_000de4c4;\nLAB_000df004:\n  puVar31 = puVar31 + 1;\n  pcVar29 = (char *)*puVar31;\n  piVar15 = *(int **)(puVar8 + -0x30);\n  if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }\n  goto LAB_000df010;\ncode_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);\n  if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }\nLAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n  if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);\n  unaff_s6 = (int *******)(iVar3 + 1);\n  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);\n  pppppppiVar22 = pppppppiStack_324;\n  if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n  uStack_30c = 1;\nLAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);\n  pppppppiVar25 = pppppppiVar6;\n  pcVar33 = pcStack_348;\n  if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }\n  pppppppiVar6 = pppppppiVar25;\n  puVar8 = puVar34;\n  if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }\nLAB_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }\n  pcVar33 = *(code **)(pcVar33 + -0x6004);\n  pcVar35 = glob_filename;\n  pcVar29 = pcStack_25c;\n  (*pcVar33)();\n  *(code **)(puVar8 + -4) = pcVar35;\n  *(undefined1 **)(puVar8 + -8) = auStack_358;\n  *(int ********)(puVar8 + -0xc) = pppppppiVar4;\n  *(int ********)(puVar8 + -0x10) = unaff_s6;\n  *(int ********)(puVar8 + -0x14) = pppppppiVar28;\n  *(int ********)(puVar8 + -0x18) = pppppppiVar7;\n  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;\n  *(int ********)(puVar8 + -0x20) = unaff_s2;\n  *(int ********)(puVar8 + -0x24) = pppppppiVar6;\n  *(int ********)(puVar8 + -0x28) = pppppppiVar25;\n  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;\n  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);\n  iVar3 = *(int *)(puVar8 + -0x50);\n  if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }\n  *pppppppiVar7 = (int ******)0x0;\n  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }\n  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n  iVar23 = *(int *)(puVar8 + -0x50);\n  piVar15 = *(int **)(iVar23 + -0x7cfc);\nLAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }\n  (*pcVar33)();\n  return pppppppiVar7;\n}" ({ "{") (declaration "bool bVar1;" (primitive_type "bool") (identifier "bVar1") (; ";")) (declaration "char cVar2;" (primitive_type "char") (identifier "cVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int *******pppppppiVar4;" (primitive_type "int") (pointer_declarator "*******pppppppiVar4" (* "*") (pointer_declarator "******pppppppiVar4" (* "*") (pointer_declarator "*****pppppppiVar4" (* "*") (pointer_declarator "****pppppppiVar4" (* "*") (pointer_declarator "***pppppppiVar4" (* "*") (pointer_declarator "**pppppppiVar4" (* "*") (pointer_declarator "*pppppppiVar4" (* "*") (identifier "pppppppiVar4")))))))) (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int *******pppppppiVar6;" (primitive_type "int") (pointer_declarator "*******pppppppiVar6" (* "*") (pointer_declarator "******pppppppiVar6" (* "*") (pointer_declarator "*****pppppppiVar6" (* "*") (pointer_declarator "****pppppppiVar6" (* "*") (pointer_declarator "***pppppppiVar6" (* "*") (pointer_declarator "**pppppppiVar6" (* "*") (pointer_declarator "*pppppppiVar6" (* "*") (identifier "pppppppiVar6")))))))) (; ";")) (declaration "int *******pppppppiVar7;" (primitive_type "int") (pointer_declarator "*******pppppppiVar7" (* "*") (pointer_declarator "******pppppppiVar7" (* "*") (pointer_declarator "*****pppppppiVar7" (* "*") (pointer_declarator "****pppppppiVar7" (* "*") (pointer_declarator "***pppppppiVar7" (* "*") (pointer_declarator "**pppppppiVar7" (* "*") (pointer_declarator "*pppppppiVar7" (* "*") (identifier "pppppppiVar7")))))))) (; ";")) (declaration "undefined1 *puVar8;" (type_identifier "undefined1") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "undefined4 uVar9;" (type_identifier "undefined4") (identifier "uVar9") (; ";")) (declaration "int ******ppppppiVar10;" (primitive_type "int") (pointer_declarator "******ppppppiVar10" (* "*") (pointer_declarator "*****ppppppiVar10" (* "*") (pointer_declarator "****ppppppiVar10" (* "*") (pointer_declarator "***ppppppiVar10" (* "*") (pointer_declarator "**ppppppiVar10" (* "*") (pointer_declarator "*ppppppiVar10" (* "*") (identifier "ppppppiVar10"))))))) (; ";")) (declaration "int *piVar11;" (primitive_type "int") (pointer_declarator "*piVar11" (* "*") (identifier "piVar11")) (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "int *piVar13;" (primitive_type "int") (pointer_declarator "*piVar13" (* "*") (identifier "piVar13")) (; ";")) (declaration "uint uVar14;" (type_identifier "uint") (identifier "uVar14") (; ";")) (declaration "int *piVar15;" (primitive_type "int") (pointer_declarator "*piVar15" (* "*") (identifier "piVar15")) (; ";")) (declaration "int ******ppppppiVar16;" (primitive_type "int") (pointer_declarator "******ppppppiVar16" (* "*") (pointer_declarator "*****ppppppiVar16" (* "*") (pointer_declarator "****ppppppiVar16" (* "*") (pointer_declarator "***ppppppiVar16" (* "*") (pointer_declarator "**ppppppiVar16" (* "*") (pointer_declarator "*ppppppiVar16" (* "*") (identifier "ppppppiVar16"))))))) (; ";")) (declaration "int iVar17;" (primitive_type "int") (identifier "iVar17") (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "int ******ppppppiVar19;" (primitive_type "int") (pointer_declarator "******ppppppiVar19" (* "*") (pointer_declarator "*****ppppppiVar19" (* "*") (pointer_declarator "****ppppppiVar19" (* "*") (pointer_declarator "***ppppppiVar19" (* "*") (pointer_declarator "**ppppppiVar19" (* "*") (pointer_declarator "*ppppppiVar19" (* "*") (identifier "ppppppiVar19"))))))) (; ";")) (declaration "uint uVar20;" (type_identifier "uint") (identifier "uVar20") (; ";")) (declaration "int ******ppppppiVar21;" (primitive_type "int") (pointer_declarator "******ppppppiVar21" (* "*") (pointer_declarator "*****ppppppiVar21" (* "*") (pointer_declarator "****ppppppiVar21" (* "*") (pointer_declarator "***ppppppiVar21" (* "*") (pointer_declarator "**ppppppiVar21" (* "*") (pointer_declarator "*ppppppiVar21" (* "*") (identifier "ppppppiVar21"))))))) (; ";")) (declaration "int *******pppppppiVar22;" (primitive_type "int") (pointer_declarator "*******pppppppiVar22" (* "*") (pointer_declarator "******pppppppiVar22" (* "*") (pointer_declarator "*****pppppppiVar22" (* "*") (pointer_declarator "****pppppppiVar22" (* "*") (pointer_declarator "***pppppppiVar22" (* "*") (pointer_declarator "**pppppppiVar22" (* "*") (pointer_declarator "*pppppppiVar22" (* "*") (identifier "pppppppiVar22")))))))) (; ";")) (declaration "int iVar23;" (primitive_type "int") (identifier "iVar23") (; ";")) (declaration "int *******__quote;" (primitive_type "int") (pointer_declarator "*******__quote" (* "*") (pointer_declarator "******__quote" (* "*") (pointer_declarator "*****__quote" (* "*") (pointer_declarator "****__quote" (* "*") (pointer_declarator "***__quote" (* "*") (pointer_declarator "**__quote" (* "*") (pointer_declarator "*__quote" (* "*") (identifier "__quote")))))))) (; ";")) (declaration "int iVar24;" (primitive_type "int") (identifier "iVar24") (; ";")) (declaration "int *******pppppppiVar25;" (primitive_type "int") (pointer_declarator "*******pppppppiVar25" (* "*") (pointer_declarator "******pppppppiVar25" (* "*") (pointer_declarator "*****pppppppiVar25" (* "*") (pointer_declarator "****pppppppiVar25" (* "*") (pointer_declarator "***pppppppiVar25" (* "*") (pointer_declarator "**pppppppiVar25" (* "*") (pointer_declarator "*pppppppiVar25" (* "*") (identifier "pppppppiVar25")))))))) (; ";")) (declaration "int *******unaff_s2;" (primitive_type "int") (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 "char *pcVar26;" (primitive_type "char") (pointer_declarator "*pcVar26" (* "*") (identifier "pcVar26")) (; ";")) (declaration "int *******unaff_s3;" (primitive_type "int") (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 "int *******pppppppiVar27;" (primitive_type "int") (pointer_declarator "*******pppppppiVar27" (* "*") (pointer_declarator "******pppppppiVar27" (* "*") (pointer_declarator "*****pppppppiVar27" (* "*") (pointer_declarator "****pppppppiVar27" (* "*") (pointer_declarator "***pppppppiVar27" (* "*") (pointer_declarator "**pppppppiVar27" (* "*") (pointer_declarator "*pppppppiVar27" (* "*") (identifier "pppppppiVar27")))))))) (; ";")) (declaration "int *******unaff_s4;" (primitive_type "int") (pointer_declarator "*******unaff_s4" (* "*") (pointer_declarator "******unaff_s4" (* "*") (pointer_declarator "*****unaff_s4" (* "*") (pointer_declarator "****unaff_s4" (* "*") (pointer_declarator "***unaff_s4" (* "*") (pointer_declarator "**unaff_s4" (* "*") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")))))))) (; ";")) (declaration "int *******unaff_s5;" (primitive_type "int") (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 "int *******pppppppiVar28;" (primitive_type "int") (pointer_declarator "*******pppppppiVar28" (* "*") (pointer_declarator "******pppppppiVar28" (* "*") (pointer_declarator "*****pppppppiVar28" (* "*") (pointer_declarator "****pppppppiVar28" (* "*") (pointer_declarator "***pppppppiVar28" (* "*") (pointer_declarator "**pppppppiVar28" (* "*") (pointer_declarator "*pppppppiVar28" (* "*") (identifier "pppppppiVar28")))))))) (; ";")) (declaration "char *pcVar29;" (primitive_type "char") (pointer_declarator "*pcVar29" (* "*") (identifier "pcVar29")) (; ";")) (declaration "int *******unaff_s6;" (primitive_type "int") (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 "uint uVar30;" (type_identifier "uint") (identifier "uVar30") (; ";")) (declaration "undefined4 *puVar31;" (type_identifier "undefined4") (pointer_declarator "*puVar31" (* "*") (identifier "puVar31")) (; ";")) (declaration "int *******unaff_s7;" (primitive_type "int") (pointer_declarator "*******unaff_s7" (* "*") (pointer_declarator "******unaff_s7" (* "*") (pointer_declarator "*****unaff_s7" (* "*") (pointer_declarator "****unaff_s7" (* "*") (pointer_declarator "***unaff_s7" (* "*") (pointer_declarator "**unaff_s7" (* "*") (pointer_declarator "*unaff_s7" (* "*") (identifier "unaff_s7")))))))) (; ";")) (declaration "undefined *puVar32;" (type_identifier "undefined") (pointer_declarator "*puVar32" (* "*") (identifier "puVar32")) (; ";")) (declaration "code *pcVar33;" (type_identifier "code") (pointer_declarator "*pcVar33" (* "*") (identifier "pcVar33")) (; ";")) (declaration "undefined1 *puVar34;" (type_identifier "undefined1") (pointer_declarator "*puVar34" (* "*") (identifier "puVar34")) (; ";")) (declaration "int ******unaff_s8;" (primitive_type "int") (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 "code *pcVar35;" (type_identifier "code") (pointer_declarator "*pcVar35" (* "*") (identifier "pcVar35")) (; ";")) (declaration "undefined1 auStack_360 [8];" (type_identifier "undefined1") (array_declarator "auStack_360 [8]" (identifier "auStack_360") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "undefined1 auStack_358 [8];" (type_identifier "undefined1") (array_declarator "auStack_358 [8]" (identifier "auStack_358") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "int ******ppppppiStack_350;" (primitive_type "int") (pointer_declarator "******ppppppiStack_350" (* "*") (pointer_declarator "*****ppppppiStack_350" (* "*") (pointer_declarator "****ppppppiStack_350" (* "*") (pointer_declarator "***ppppppiStack_350" (* "*") (pointer_declarator "**ppppppiStack_350" (* "*") (pointer_declarator "*ppppppiStack_350" (* "*") (identifier "ppppppiStack_350"))))))) (; ";")) (declaration "undefined1 *puStack_34c;" (type_identifier "undefined1") (pointer_declarator "*puStack_34c" (* "*") (identifier "puStack_34c")) (; ";")) (declaration "code *pcStack_348;" (type_identifier "code") (pointer_declarator "*pcStack_348" (* "*") (identifier "pcStack_348")) (; ";")) (declaration "int *******pppppppiStack_340;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_340" (* "*") (pointer_declarator "******pppppppiStack_340" (* "*") (pointer_declarator "*****pppppppiStack_340" (* "*") (pointer_declarator "****pppppppiStack_340" (* "*") (pointer_declarator "***pppppppiStack_340" (* "*") (pointer_declarator "**pppppppiStack_340" (* "*") (pointer_declarator "*pppppppiStack_340" (* "*") (identifier "pppppppiStack_340")))))))) (; ";")) (declaration "uint uStack_33c;" (type_identifier "uint") (identifier "uStack_33c") (; ";")) (declaration "uint uStack_338;" (type_identifier "uint") (identifier "uStack_338") (; ";")) (declaration "code *pcStack_334;" (type_identifier "code") (pointer_declarator "*pcStack_334" (* "*") (identifier "pcStack_334")) (; ";")) (declaration "uint uStack_330;" (type_identifier "uint") (identifier "uStack_330") (; ";")) (declaration "int iStack_32c;" (primitive_type "int") (identifier "iStack_32c") (; ";")) (declaration "undefined4 uStack_328;" (type_identifier "undefined4") (identifier "uStack_328") (; ";")) (declaration "int *******pppppppiStack_324;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_324" (* "*") (pointer_declarator "******pppppppiStack_324" (* "*") (pointer_declarator "*****pppppppiStack_324" (* "*") (pointer_declarator "****pppppppiStack_324" (* "*") (pointer_declarator "***pppppppiStack_324" (* "*") (pointer_declarator "**pppppppiStack_324" (* "*") (pointer_declarator "*pppppppiStack_324" (* "*") (identifier "pppppppiStack_324")))))))) (; ";")) (declaration "uint uStack_320;" (type_identifier "uint") (identifier "uStack_320") (; ";")) (declaration "code *pcStack_31c;" (type_identifier "code") (pointer_declarator "*pcStack_31c" (* "*") (identifier "pcStack_31c")) (; ";")) (declaration "int iStack_318;" (primitive_type "int") (identifier "iStack_318") (; ";")) (declaration "int iStack_314;" (primitive_type "int") (identifier "iStack_314") (; ";")) (declaration "int *******pppppppiStack_310;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_310" (* "*") (pointer_declarator "******pppppppiStack_310" (* "*") (pointer_declarator "*****pppppppiStack_310" (* "*") (pointer_declarator "****pppppppiStack_310" (* "*") (pointer_declarator "***pppppppiStack_310" (* "*") (pointer_declarator "**pppppppiStack_310" (* "*") (pointer_declarator "*pppppppiStack_310" (* "*") (identifier "pppppppiStack_310")))))))) (; ";")) (declaration "uint uStack_30c;" (type_identifier "uint") (identifier "uStack_30c") (; ";")) (declaration "int iStack_308;" (primitive_type "int") (identifier "iStack_308") (; ";")) (declaration "int *******pppppppiStack_304;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_304" (* "*") (pointer_declarator "******pppppppiStack_304" (* "*") (pointer_declarator "*****pppppppiStack_304" (* "*") (pointer_declarator "****pppppppiStack_304" (* "*") (pointer_declarator "***pppppppiStack_304" (* "*") (pointer_declarator "**pppppppiStack_304" (* "*") (pointer_declarator "*pppppppiStack_304" (* "*") (identifier "pppppppiStack_304")))))))) (; ";")) (declaration "undefined1 auStack_300 [164];" (type_identifier "undefined1") (array_declarator "auStack_300 [164]" (identifier "auStack_300") ([ "[") (number_literal "164") (] "]")) (; ";")) (declaration "char *pcStack_25c;" (primitive_type "char") (pointer_declarator "*pcStack_25c" (* "*") (identifier "pcStack_25c")) (; ";")) (declaration "int *******pppppppiStack_258;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_258" (* "*") (pointer_declarator "******pppppppiStack_258" (* "*") (pointer_declarator "*****pppppppiStack_258" (* "*") (pointer_declarator "****pppppppiStack_258" (* "*") (pointer_declarator "***pppppppiStack_258" (* "*") (pointer_declarator "**pppppppiStack_258" (* "*") (pointer_declarator "*pppppppiStack_258" (* "*") (identifier "pppppppiStack_258")))))))) (; ";")) (declaration "int *******pppppppiStack_254;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_254" (* "*") (pointer_declarator "******pppppppiStack_254" (* "*") (pointer_declarator "*****pppppppiStack_254" (* "*") (pointer_declarator "****pppppppiStack_254" (* "*") (pointer_declarator "***pppppppiStack_254" (* "*") (pointer_declarator "**pppppppiStack_254" (* "*") (pointer_declarator "*pppppppiStack_254" (* "*") (identifier "pppppppiStack_254")))))))) (; ";")) (declaration "int *******pppppppiStack_250;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_250" (* "*") (pointer_declarator "******pppppppiStack_250" (* "*") (pointer_declarator "*****pppppppiStack_250" (* "*") (pointer_declarator "****pppppppiStack_250" (* "*") (pointer_declarator "***pppppppiStack_250" (* "*") (pointer_declarator "**pppppppiStack_250" (* "*") (pointer_declarator "*pppppppiStack_250" (* "*") (identifier "pppppppiStack_250")))))))) (; ";")) (declaration "int *******pppppppiStack_24c;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_24c" (* "*") (pointer_declarator "******pppppppiStack_24c" (* "*") (pointer_declarator "*****pppppppiStack_24c" (* "*") (pointer_declarator "****pppppppiStack_24c" (* "*") (pointer_declarator "***pppppppiStack_24c" (* "*") (pointer_declarator "**pppppppiStack_24c" (* "*") (pointer_declarator "*pppppppiStack_24c" (* "*") (identifier "pppppppiStack_24c")))))))) (; ";")) (declaration "int *******pppppppiStack_248;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_248" (* "*") (pointer_declarator "******pppppppiStack_248" (* "*") (pointer_declarator "*****pppppppiStack_248" (* "*") (pointer_declarator "****pppppppiStack_248" (* "*") (pointer_declarator "***pppppppiStack_248" (* "*") (pointer_declarator "**pppppppiStack_248" (* "*") (pointer_declarator "*pppppppiStack_248" (* "*") (identifier "pppppppiStack_248")))))))) (; ";")) (declaration "int *******pppppppiStack_244;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_244" (* "*") (pointer_declarator "******pppppppiStack_244" (* "*") (pointer_declarator "*****pppppppiStack_244" (* "*") (pointer_declarator "****pppppppiStack_244" (* "*") (pointer_declarator "***pppppppiStack_244" (* "*") (pointer_declarator "**pppppppiStack_244" (* "*") (pointer_declarator "*pppppppiStack_244" (* "*") (identifier "pppppppiStack_244")))))))) (; ";")) (declaration "int *******pppppppiStack_240;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_240" (* "*") (pointer_declarator "******pppppppiStack_240" (* "*") (pointer_declarator "*****pppppppiStack_240" (* "*") (pointer_declarator "****pppppppiStack_240" (* "*") (pointer_declarator "***pppppppiStack_240" (* "*") (pointer_declarator "**pppppppiStack_240" (* "*") (pointer_declarator "*pppppppiStack_240" (* "*") (identifier "pppppppiStack_240")))))))) (; ";")) (declaration "int *******pppppppiStack_23c;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_23c" (* "*") (pointer_declarator "******pppppppiStack_23c" (* "*") (pointer_declarator "*****pppppppiStack_23c" (* "*") (pointer_declarator "****pppppppiStack_23c" (* "*") (pointer_declarator "***pppppppiStack_23c" (* "*") (pointer_declarator "**pppppppiStack_23c" (* "*") (pointer_declarator "*pppppppiStack_23c" (* "*") (identifier "pppppppiStack_23c")))))))) (; ";")) (declaration "int ******ppppppiStack_238;" (primitive_type "int") (pointer_declarator "******ppppppiStack_238" (* "*") (pointer_declarator "*****ppppppiStack_238" (* "*") (pointer_declarator "****ppppppiStack_238" (* "*") (pointer_declarator "***ppppppiStack_238" (* "*") (pointer_declarator "**ppppppiStack_238" (* "*") (pointer_declarator "*ppppppiStack_238" (* "*") (identifier "ppppppiStack_238"))))))) (; ";")) (declaration "code *pcStack_234;" (type_identifier "code") (pointer_declarator "*pcStack_234" (* "*") (identifier "pcStack_234")) (; ";")) (declaration "code *pcStack_220;" (type_identifier "code") (pointer_declarator "*pcStack_220" (* "*") (identifier "pcStack_220")) (; ";")) (declaration "int *******pppppppiStack_218;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_218" (* "*") (pointer_declarator "******pppppppiStack_218" (* "*") (pointer_declarator "*****pppppppiStack_218" (* "*") (pointer_declarator "****pppppppiStack_218" (* "*") (pointer_declarator "***pppppppiStack_218" (* "*") (pointer_declarator "**pppppppiStack_218" (* "*") (pointer_declarator "*pppppppiStack_218" (* "*") (identifier "pppppppiStack_218")))))))) (; ";")) (declaration "int *******pppppppiStack_214;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_214" (* "*") (pointer_declarator "******pppppppiStack_214" (* "*") (pointer_declarator "*****pppppppiStack_214" (* "*") (pointer_declarator "****pppppppiStack_214" (* "*") (pointer_declarator "***pppppppiStack_214" (* "*") (pointer_declarator "**pppppppiStack_214" (* "*") (pointer_declarator "*pppppppiStack_214" (* "*") (identifier "pppppppiStack_214")))))))) (; ";")) (declaration "int *******pppppppiStack_210;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_210" (* "*") (pointer_declarator "******pppppppiStack_210" (* "*") (pointer_declarator "*****pppppppiStack_210" (* "*") (pointer_declarator "****pppppppiStack_210" (* "*") (pointer_declarator "***pppppppiStack_210" (* "*") (pointer_declarator "**pppppppiStack_210" (* "*") (pointer_declarator "*pppppppiStack_210" (* "*") (identifier "pppppppiStack_210")))))))) (; ";")) (declaration "code *pcStack_20c;" (type_identifier "code") (pointer_declarator "*pcStack_20c" (* "*") (identifier "pcStack_20c")) (; ";")) (declaration "code *pcStack_1f8;" (type_identifier "code") (pointer_declarator "*pcStack_1f8" (* "*") (identifier "pcStack_1f8")) (; ";")) (declaration "int *******pppppppiStack_1f0;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1f0" (* "*") (pointer_declarator "******pppppppiStack_1f0" (* "*") (pointer_declarator "*****pppppppiStack_1f0" (* "*") (pointer_declarator "****pppppppiStack_1f0" (* "*") (pointer_declarator "***pppppppiStack_1f0" (* "*") (pointer_declarator "**pppppppiStack_1f0" (* "*") (pointer_declarator "*pppppppiStack_1f0" (* "*") (identifier "pppppppiStack_1f0")))))))) (; ";")) (declaration "undefined4 uStack_1ec;" (type_identifier "undefined4") (identifier "uStack_1ec") (; ";")) (declaration "undefined4 uStack_1e8;" (type_identifier "undefined4") (identifier "uStack_1e8") (; ";")) (declaration "int *******pppppppiStack_1e4;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1e4" (* "*") (pointer_declarator "******pppppppiStack_1e4" (* "*") (pointer_declarator "*****pppppppiStack_1e4" (* "*") (pointer_declarator "****pppppppiStack_1e4" (* "*") (pointer_declarator "***pppppppiStack_1e4" (* "*") (pointer_declarator "**pppppppiStack_1e4" (* "*") (pointer_declarator "*pppppppiStack_1e4" (* "*") (identifier "pppppppiStack_1e4")))))))) (; ";")) (declaration "int *******pppppppiStack_1e0;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1e0" (* "*") (pointer_declarator "******pppppppiStack_1e0" (* "*") (pointer_declarator "*****pppppppiStack_1e0" (* "*") (pointer_declarator "****pppppppiStack_1e0" (* "*") (pointer_declarator "***pppppppiStack_1e0" (* "*") (pointer_declarator "**pppppppiStack_1e0" (* "*") (pointer_declarator "*pppppppiStack_1e0" (* "*") (identifier "pppppppiStack_1e0")))))))) (; ";")) (declaration "int *******pppppppiStack_1dc;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1dc" (* "*") (pointer_declarator "******pppppppiStack_1dc" (* "*") (pointer_declarator "*****pppppppiStack_1dc" (* "*") (pointer_declarator "****pppppppiStack_1dc" (* "*") (pointer_declarator "***pppppppiStack_1dc" (* "*") (pointer_declarator "**pppppppiStack_1dc" (* "*") (pointer_declarator "*pppppppiStack_1dc" (* "*") (identifier "pppppppiStack_1dc")))))))) (; ";")) (declaration "int *******pppppppiStack_1d8;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1d8" (* "*") (pointer_declarator "******pppppppiStack_1d8" (* "*") (pointer_declarator "*****pppppppiStack_1d8" (* "*") (pointer_declarator "****pppppppiStack_1d8" (* "*") (pointer_declarator "***pppppppiStack_1d8" (* "*") (pointer_declarator "**pppppppiStack_1d8" (* "*") (pointer_declarator "*pppppppiStack_1d8" (* "*") (identifier "pppppppiStack_1d8")))))))) (; ";")) (declaration "code *pcStack_1d4;" (type_identifier "code") (pointer_declarator "*pcStack_1d4" (* "*") (identifier "pcStack_1d4")) (; ";")) (declaration "undefined *puStack_1c0;" (type_identifier "undefined") (pointer_declarator "*puStack_1c0" (* "*") (identifier "puStack_1c0")) (; ";")) (declaration "int *******pppppppiStack_1b4;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1b4" (* "*") (pointer_declarator "******pppppppiStack_1b4" (* "*") (pointer_declarator "*****pppppppiStack_1b4" (* "*") (pointer_declarator "****pppppppiStack_1b4" (* "*") (pointer_declarator "***pppppppiStack_1b4" (* "*") (pointer_declarator "**pppppppiStack_1b4" (* "*") (pointer_declarator "*pppppppiStack_1b4" (* "*") (identifier "pppppppiStack_1b4")))))))) (; ";")) (declaration "int iStack_1b0;" (primitive_type "int") (identifier "iStack_1b0") (; ";")) (declaration "int iStack_1ac;" (primitive_type "int") (identifier "iStack_1ac") (; ";")) (declaration "int iStack_1a8;" (primitive_type "int") (identifier "iStack_1a8") (; ";")) (declaration "uint uStack_1a4;" (type_identifier "uint") (identifier "uStack_1a4") (; ";")) (declaration "int *******pppppppiStack_1a0;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_1a0" (* "*") (pointer_declarator "******pppppppiStack_1a0" (* "*") (pointer_declarator "*****pppppppiStack_1a0" (* "*") (pointer_declarator "****pppppppiStack_1a0" (* "*") (pointer_declarator "***pppppppiStack_1a0" (* "*") (pointer_declarator "**pppppppiStack_1a0" (* "*") (pointer_declarator "*pppppppiStack_1a0" (* "*") (identifier "pppppppiStack_1a0")))))))) (; ";")) (declaration "int *******pppppppiStack_19c;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_19c" (* "*") (pointer_declarator "******pppppppiStack_19c" (* "*") (pointer_declarator "*****pppppppiStack_19c" (* "*") (pointer_declarator "****pppppppiStack_19c" (* "*") (pointer_declarator "***pppppppiStack_19c" (* "*") (pointer_declarator "**pppppppiStack_19c" (* "*") (pointer_declarator "*pppppppiStack_19c" (* "*") (identifier "pppppppiStack_19c")))))))) (; ";")) (declaration "int ******appppppiStack_198 [6];" (primitive_type "int") (pointer_declarator "******appppppiStack_198 [6]" (* "*") (pointer_declarator "*****appppppiStack_198 [6]" (* "*") (pointer_declarator "****appppppiStack_198 [6]" (* "*") (pointer_declarator "***appppppiStack_198 [6]" (* "*") (pointer_declarator "**appppppiStack_198 [6]" (* "*") (pointer_declarator "*appppppiStack_198 [6]" (* "*") (array_declarator "appppppiStack_198 [6]" (identifier "appppppiStack_198") ([ "[") (number_literal "6") (] "]")))))))) (; ";")) (declaration "uint uStack_180;" (type_identifier "uint") (identifier "uStack_180") (; ";")) (declaration "int *******pppppppiStack_f4;" (primitive_type "int") (pointer_declarator "*******pppppppiStack_f4" (* "*") (pointer_declarator "******pppppppiStack_f4" (* "*") (pointer_declarator "*****pppppppiStack_f4" (* "*") (pointer_declarator "****pppppppiStack_f4" (* "*") (pointer_declarator "***pppppppiStack_f4" (* "*") (pointer_declarator "**pppppppiStack_f4" (* "*") (pointer_declarator "*pppppppiStack_f4" (* "*") (identifier "pppppppiStack_f4")))))))) (; ";")) (declaration "int ******appppppiStack_b0 [6];" (primitive_type "int") (pointer_declarator "******appppppiStack_b0 [6]" (* "*") (pointer_declarator "*****appppppiStack_b0 [6]" (* "*") (pointer_declarator "****appppppiStack_b0 [6]" (* "*") (pointer_declarator "***appppppiStack_b0 [6]" (* "*") (pointer_declarator "**appppppiStack_b0 [6]" (* "*") (pointer_declarator "*appppppiStack_b0 [6]" (* "*") (array_declarator "appppppiStack_b0 [6]" (identifier "appppppiStack_b0") ([ "[") (number_literal "6") (] "]")))))))) (; ";")) (declaration "uint local_98;" (type_identifier "uint") (identifier "local_98") (; ";")) (declaration "int local_c;" (primitive_type "int") (identifier "local_c") (; ";")) (expression_statement "local_c = *(int *)PTR___stack_chk_guard_0015858c;" (assignment_expression "local_c = *(int *)PTR___stack_chk_guard_0015858c" (identifier "local_c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0015858c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0015858c")))) (; ";")) (expression_statement "pppppppiVar7 = appppppiStack_b0;" (assignment_expression "pppppppiVar7 = appppppiStack_b0" (identifier "pppppppiVar7") (= "=") (identifier "appppppiStack_b0")) (; ";")) (if_statement "if ((param_2 & 0x10) == 0) {\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }\n  else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" (if "if") (parenthesized_expression "((param_2 & 0x10) == 0)" (( "(") (binary_expression "(param_2 & 0x10) == 0" (parenthesized_expression "(param_2 & 0x10)" (( "(") (binary_expression "param_2 & 0x10" (identifier "param_2") (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);\n  }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR___xstat64_001582e8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___xstat64_001582e8)(3)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR___xstat64_001582e8)(3)" (parenthesized_expression "(*(code *)PTR___xstat64_001582e8)" (( "(") (pointer_expression "*(code *)PTR___xstat64_001582e8" (* "*") (cast_expression "(code *)PTR___xstat64_001582e8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___xstat64_001582e8"))) () ")")) (argument_list "(3)" (( "(") (number_literal "3") () ")")))) (; ";")) (} "}")) (else_clause "else {\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" (else "else") (compound_statement "{\n    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);\n  }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);" (assignment_expression "iVar3 = (*(code *)PTR___lxstat64_001582c8)(3)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR___lxstat64_001582c8)(3)" (parenthesized_expression "(*(code *)PTR___lxstat64_001582c8)" (( "(") (pointer_expression "*(code *)PTR___lxstat64_001582c8" (* "*") (cast_expression "(code *)PTR___lxstat64_001582c8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___lxstat64_001582c8"))) () ")")) (argument_list "(3)" (( "(") (number_literal "3") () ")")))) (; ";")) (} "}")))) (if_statement "if (iVar3 < 0) {\n    pppppppiVar4 = (int *******)0xffffffff;\n  }\n  else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n    pppppppiVar4 = (int *******)0xffffffff;\n  }" ({ "{") (expression_statement "pppppppiVar4 = (int *******)0xffffffff;" (assignment_expression "pppppppiVar4 = (int *******)0xffffffff" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)0xffffffff" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" (else "else") (if_statement "if ((local_98 & 0xf000) == 0xa000) {\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }\n  else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" (if "if") (parenthesized_expression "((local_98 & 0xf000) == 0xa000)" (( "(") (binary_expression "(local_98 & 0xf000) == 0xa000" (parenthesized_expression "(local_98 & 0xf000)" (( "(") (binary_expression "local_98 & 0xf000" (identifier "local_98") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (compound_statement "{\n    pppppppiVar4 = (int *******)&SUB_fffffffe;\n  }" ({ "{") (expression_statement "pppppppiVar4 = (int *******)&SUB_fffffffe;" (assignment_expression "pppppppiVar4 = (int *******)&SUB_fffffffe" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)&SUB_fffffffe" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&SUB_fffffffe" (& "&") (identifier "SUB_fffffffe")))) (; ";")) (} "}")) (else_clause "else {\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" (else "else") (compound_statement "{\n    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);\n  }" ({ "{") (expression_statement "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);" (assignment_expression "pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000)" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)-(uint)((local_98 & 0xf000) != 0x4000)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (unary_expression "-(uint)((local_98 & 0xf000) != 0x4000)" (- "-") (call_expression "(uint)((local_98 & 0xf000) != 0x4000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((local_98 & 0xf000) != 0x4000)" (( "(") (binary_expression "(local_98 & 0xf000) != 0x4000" (parenthesized_expression "(local_98 & 0xf000)" (( "(") (binary_expression "local_98 & 0xf000" (identifier "local_98") (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0x4000")) () ")")))))) (; ";")) (} "}")))))) (if_statement "if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {\n    return pppppppiVar4;\n  }" (if "if") (parenthesized_expression "(local_c == *(int *)PTR___stack_chk_guard_0015858c)" (( "(") (binary_expression "local_c == *(int *)PTR___stack_chk_guard_0015858c" (identifier "local_c") (== "==") (pointer_expression "*(int *)PTR___stack_chk_guard_0015858c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0015858c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0015858c")))) () ")")) (compound_statement "{\n    return pppppppiVar4;\n  }" ({ "{") (return_statement "return pppppppiVar4;" (return "return") (identifier "pppppppiVar4") (; ";")) (} "}"))) (expression_statement "iVar3 = local_c;" (assignment_expression "iVar3 = local_c" (identifier "iVar3") (= "=") (identifier "local_c")) (; ";")) (expression_statement "puVar32 = PTR___stack_chk_fail_0015853c;" (assignment_expression "puVar32 = PTR___stack_chk_fail_0015853c" (identifier "puVar32") (= "=") (identifier "PTR___stack_chk_fail_0015853c")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_0015853c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015853c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015853c)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0015853c" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0015853c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0015853c"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puStack_1c0 = puVar32 + 0x80e64;" (assignment_expression "puStack_1c0 = puVar32 + 0x80e64" (identifier "puStack_1c0") (= "=") (binary_expression "puVar32 + 0x80e64" (identifier "puVar32") (+ "+") (number_literal "0x80e64"))) (; ";")) (expression_statement "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);" (assignment_expression "pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" (identifier "pppppppiStack_f4") (= "=") (cast_expression "(int *******)**(undefined4 **)(puVar32 + 0x7aeb0)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(undefined4 **)(puVar32 + 0x7aeb0)" (* "*") (pointer_expression "*(undefined4 **)(puVar32 + 0x7aeb0)" (* "*") (cast_expression "(undefined4 **)(puVar32 + 0x7aeb0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + 0x7aeb0)" (( "(") (binary_expression "puVar32 + 0x7aeb0" (identifier "puVar32") (+ "+") (number_literal "0x7aeb0")) () ")"))))))) (; ";")) (expression_statement "pppppppiVar25 = param_1;" (assignment_expression "pppppppiVar25 = param_1" (identifier "pppppppiVar25") (= "=") (identifier "param_1")) (; ";")) (expression_statement "iStack_1b0 = iVar3;" (assignment_expression "iStack_1b0 = iVar3" (identifier "iStack_1b0") (= "=") (identifier "iVar3")) (; ";")) (expression_statement "pppppppiStack_19c = param_1;" (assignment_expression "pppppppiStack_19c = param_1" (identifier "pppppppiStack_19c") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))()" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)(**(code **)(puVar32 + 0x7ad68))()" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puVar32 + 0x7ad68))()" (parenthesized_expression "(**(code **)(puVar32 + 0x7ad68))" (( "(") (pointer_expression "**(code **)(puVar32 + 0x7ad68)" (* "*") (pointer_expression "*(code **)(puVar32 + 0x7ad68)" (* "*") (cast_expression "(code **)(puVar32 + 0x7ad68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + 0x7ad68)" (( "(") (binary_expression "puVar32 + 0x7ad68" (identifier "puVar32") (+ "+") (number_literal "0x7ad68")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }\n  else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar4 == (int *******)0x0" (identifier "pppppppiVar4") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    pppppppiVar6 = param_1;\n    pppppppiVar4 = unaff_s7;\n    if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }\n  }" ({ "{") (expression_statement "pppppppiVar6 = param_1;" (assignment_expression "pppppppiVar6 = param_1" (identifier "pppppppiVar6") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pppppppiVar4 = unaff_s7;" (assignment_expression "pppppppiVar4 = unaff_s7" (identifier "pppppppiVar4") (= "=") (identifier "unaff_s7")) (; ";")) (if_statement "if (((uint)pppppppiVar7 & 1) == 0) {\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }\n    else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 1) == 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 1) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 1)" (( "(") (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      pppppppiStack_1a0 = pppppppiStack_19c;\n      pppppppiVar7 = (int *******)0x0;\n      pppppppiVar22 = pppppppiVar25;\n    }" ({ "{") (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" (identifier "pppppppiStack_1a0") (= "=") (identifier "pppppppiStack_19c")) (; ";")) (expression_statement "pppppppiVar7 = (int *******)0x0;" (assignment_expression "pppppppiVar7 = (int *******)0x0" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}")) (else_clause "else {\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" (else "else") (compound_statement "{\n      ppppppiVar21 = *param_1;\n      if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n    }" ({ "{") (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" (identifier "ppppppiVar21") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }\n      else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" (if "if") (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 == (int ******)0x0" (identifier "ppppppiVar21") (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" ({ "{") (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" (identifier "pppppppiStack_1a0") (= "=") (identifier "pppppppiStack_19c")) (; ";")) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" (identifier "pppppppiVar7") (= "=") (identifier "param_1")) (; ";")) (} "}")) (else_clause "else {\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" (else "else") (compound_statement "{\n        unaff_s2 = (int *******)0x4000;\n        unaff_s3 = (int *******)0x2f;\n        do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);\n        pppppppiStack_1a0 = pppppppiStack_19c;\n        pppppppiVar22 = (int *******)0x0;\n        pppppppiVar7 = param_1;\n      }" ({ "{") (expression_statement "unaff_s2 = (int *******)0x4000;" (assignment_expression "unaff_s2 = (int *******)0x4000" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x4000" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x4000"))) (; ";")) (expression_statement "unaff_s3 = (int *******)0x2f;" (assignment_expression "unaff_s3 = (int *******)0x2f" (identifier "unaff_s3") (= "=") (cast_expression "(int *******)0x2f" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2f"))) (; ";")) (do_statement "do {\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        } while (ppppppiVar21 != (int ******)0x0);" (do "do") (compound_statement "{\n          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);\n          pppppppiVar6 = appppppiStack_198;\n          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }\n          param_1 = param_1 + 1;\n          ppppppiVar21 = *param_1;\n        }" ({ "{") (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6258)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6258)" (( "(") (binary_expression "puStack_1c0 + -0x6258" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6258")) () ")"))))) () ")")) (argument_list "(3,ppppppiVar21,appppppiStack_198)" (( "(") (number_literal "3") (, ",") (identifier "ppppppiVar21") (, ",") (identifier "appppppiStack_198") () ")")))) (; ";")) (expression_statement "pppppppiVar6 = appppppiStack_198;" (assignment_expression "pppppppiVar6 = appppppiStack_198" (identifier "pppppppiVar6") (= "=") (identifier "appppppiStack_198")) (; ";")) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" (if "if") (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" (( "(") (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" (( "(") (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" (( "(") (binary_expression "uStack_180 & 0xf000" (identifier "uStack_180") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (compound_statement "{\n            unaff_s5 = (int *******)*param_1;\n            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);\n            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);\n            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);\n            pppppppiVar7 = param_1;\n            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;\n            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);\n            *(undefined1 *)unaff_s4 = 0x2f;\n            *(undefined1 *)((int)unaff_s4 + 1) = 0;\n            *param_1 = (int ******)pppppppiStack_1a0;\n          }" ({ "{") (expression_statement "unaff_s5 = (int *******)*param_1;" (assignment_expression "unaff_s5 = (int *******)*param_1" (identifier "unaff_s5") (= "=") (cast_expression "(int *******)*param_1" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*param_1" (* "*") (identifier "param_1")))) (; ";")) (expression_statement "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);" (assignment_expression "unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" (identifier "unaff_s4") (= "=") (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_1c0 + -0x60fc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60fc)" (( "(") (binary_expression "puStack_1c0 + -0x60fc" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))))) (; ";")) (expression_statement "pppppppiVar22 = (int *******)((int)unaff_s4 + 2);" (assignment_expression "pppppppiVar22 = (int *******)((int)unaff_s4 + 2)" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)((int)unaff_s4 + 2)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_s4 + 2)" (( "(") (binary_expression "(int)unaff_s4 + 2" (cast_expression "(int)unaff_s4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s4")) (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" (identifier "pppppppiStack_1a0") (= "=") (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_1c0 + -0x6098))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6098))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x6098)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x6098)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6098)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6098)" (( "(") (binary_expression "puStack_1c0 + -0x6098" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6098")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))))) (; ";")) (expression_statement "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" (identifier "pppppppiVar7") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;" (if "if") (parenthesized_expression "(pppppppiStack_1a0 == (int *******)0x0)" (( "(") (binary_expression "pppppppiStack_1a0 == (int *******)0x0" (identifier "pppppppiStack_1a0") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000dd804;" (goto "goto") (statement_identifier "LAB_000dd804") (; ";"))) (expression_statement "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);" (assignment_expression "unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" (identifier "unaff_s4") (= "=") (cast_expression "(int *******)((int)pppppppiStack_1a0 + (int)unaff_s4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiStack_1a0 + (int)unaff_s4)" (( "(") (binary_expression "(int)pppppppiStack_1a0 + (int)unaff_s4" (cast_expression "(int)pppppppiStack_1a0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiStack_1a0")) (+ "+") (cast_expression "(int)unaff_s4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s4"))) () ")")))) (; ";")) (expression_statement "*(undefined1 *)unaff_s4 = 0x2f;" (assignment_expression "*(undefined1 *)unaff_s4 = 0x2f" (pointer_expression "*(undefined1 *)unaff_s4" (* "*") (cast_expression "(undefined1 *)unaff_s4" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s4"))) (= "=") (number_literal "0x2f")) (; ";")) (expression_statement "*(undefined1 *)((int)unaff_s4 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)unaff_s4 + 1) = 0" (pointer_expression "*(undefined1 *)((int)unaff_s4 + 1)" (* "*") (cast_expression "(undefined1 *)((int)unaff_s4 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s4 + 1)" (( "(") (binary_expression "(int)unaff_s4 + 1" (cast_expression "(int)unaff_s4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s4")) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*param_1 = (int ******)pppppppiStack_1a0;" (assignment_expression "*param_1 = (int ******)pppppppiStack_1a0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (cast_expression "(int ******)pppppppiStack_1a0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiStack_1a0"))) (; ";")) (} "}"))) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" (identifier "param_1") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppppppiVar21 = *param_1;" (assignment_expression "ppppppiVar21 = *param_1" (identifier "ppppppiVar21") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (expression_statement "pppppppiStack_1a0 = pppppppiStack_19c;" (assignment_expression "pppppppiStack_1a0 = pppppppiStack_19c" (identifier "pppppppiStack_1a0") (= "=") (identifier "pppppppiStack_19c")) (; ";")) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar7 = param_1;" (assignment_expression "pppppppiVar7 = param_1" (identifier "pppppppiVar7") (= "=") (identifier "param_1")) (; ";")) (} "}")))) (} "}")))) (} "}")) (else_clause "else {\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" (else "else") (compound_statement "{\n    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);\n    pppppppiVar6 = (int *******)*pppppppiStack_19c;\n    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);\n    if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }\n  }" ({ "{") (expression_statement "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);" (assignment_expression "unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" (identifier "unaff_s6") (= "=") (cast_expression "(int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (cast_expression "(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" (* "*") (cast_expression "(char *)((int)pppppppiVar4 + iStack_1b0 + -1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiVar4 + iStack_1b0 + -1)" (( "(") (binary_expression "(int)pppppppiVar4 + iStack_1b0 + -1" (binary_expression "(int)pppppppiVar4 + iStack_1b0" (cast_expression "(int)pppppppiVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar4")) (+ "+") (identifier "iStack_1b0")) (+ "+") (number_literal "-1")) () ")"))))))) (; ";")) (expression_statement "pppppppiVar6 = (int *******)*pppppppiStack_19c;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiStack_19c" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)*pppppppiStack_19c" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiStack_19c" (* "*") (identifier "pppppppiStack_19c")))) (; ";")) (expression_statement "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);" (assignment_expression "unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f)" (identifier "unaff_s8") (= "=") (cast_expression "(int ******)(uint)(unaff_s6 != (int *******)0x2f)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "(uint)(unaff_s6 != (int *******)0x2f)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(unaff_s6 != (int *******)0x2f)" (( "(") (binary_expression "unaff_s6 != (int *******)0x2f" (identifier "unaff_s6") (!= "!=") (cast_expression "(int *******)0x2f" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2f"))) () ")"))))) (; ";")) (if_statement "if (pppppppiVar6 == (int *******)0x0) {\n      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }\n    else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" (if "if") (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar6 == (int *******)0x0" (identifier "pppppppiVar6") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);\n      pppppppiVar22 = pppppppiVar25;\n      if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }\n    }" ({ "{") (expression_statement "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);" (assignment_expression "pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" (identifier "pppppppiStack_1a0") (= "=") (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_1c0 + -0x60a4))(4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60a4)" (( "(") (binary_expression "puStack_1c0 + -0x60a4" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(4)" (( "(") (number_literal "4") () ")"))))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar25")) (; ";")) (if_statement "if (pppppppiStack_1a0 != (int *******)0x0) {\n        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" (if "if") (parenthesized_expression "(pppppppiStack_1a0 != (int *******)0x0)" (( "(") (binary_expression "pppppppiStack_1a0 != (int *******)0x0" (identifier "pppppppiStack_1a0") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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        iVar3 = 0;\nLAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;\n        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n        if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);\n        pppppppiVar22 = pppppppiVar25;\n      }" ({ "{") (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" (identifier "iVar3") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000dda68:\n        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" (statement_identifier "LAB_000dda68") (: ":") (expression_statement "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;" (assignment_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0" (pointer_expression "*(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" (* "*") (cast_expression "(undefined4 *)((int)pppppppiStack_1a0 + iVar3)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiStack_1a0 + iVar3)" (( "(") (binary_expression "(int)pppppppiStack_1a0 + iVar3" (cast_expression "(int)pppppppiStack_1a0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiStack_1a0")) (+ "+") (identifier "iVar3")) () ")")))) (= "=") (number_literal "0")) (; ";"))) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5f94)" (( "(") (binary_expression "puStack_1c0 + -0x5f94" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (if_statement "if (*pppppppiStack_19c != (int ******)0x0) {\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" (if "if") (parenthesized_expression "(*pppppppiStack_19c != (int ******)0x0)" (( "(") (binary_expression "*pppppppiStack_19c != (int ******)0x0" (pointer_expression "*pppppppiStack_19c" (* "*") (identifier "pppppppiStack_19c")) (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          pppppppiVar22 = pppppppiStack_19c + 1;\n          do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);\n        }" ({ "{") (expression_statement "pppppppiVar22 = pppppppiStack_19c + 1;" (assignment_expression "pppppppiVar22 = pppppppiStack_19c + 1" (identifier "pppppppiVar22") (= "=") (binary_expression "pppppppiStack_19c + 1" (identifier "pppppppiStack_19c") (+ "+") (number_literal "1"))) (; ";")) (do_statement "do {\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          } while (ppppppiVar21 != (int ******)0x0);" (do "do") (compound_statement "{\n            (*pcVar33)();\n            pppppppiVar7 = pppppppiVar22 + 1;\n            ppppppiVar21 = *pppppppiVar22;\n            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);\n            pppppppiVar22 = pppppppiVar7;\n          }" ({ "{") (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppiVar7 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar7 = pppppppiVar22 + 1" (identifier "pppppppiVar7") (= "=") (binary_expression "pppppppiVar22 + 1" (identifier "pppppppiVar22") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppppppiVar21 = *pppppppiVar22;" (assignment_expression "ppppppiVar21 = *pppppppiVar22" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiVar22" (* "*") (identifier "pppppppiVar22"))) (; ";")) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5f94)" (( "(") (binary_expression "puStack_1c0 + -0x5f94" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar7;" (assignment_expression "pppppppiVar22 = pppppppiVar7" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar7")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}"))) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5f94)" (( "(") (binary_expression "puStack_1c0 + -0x5f94" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_19c)" (( "(") (identifier "pppppppiStack_19c") () ")"))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" (else "else") (compound_statement "{\n      unaff_s4 = pppppppiStack_19c + 1;\n      pppppppiVar25 = unaff_s4;\n      pppppppiVar22 = (int *******)0x0;\n      do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);\n      pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);\n      pppppppiStack_1a0 = pppppppiVar27;\n      if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }\n    }" ({ "{") (expression_statement "unaff_s4 = pppppppiStack_19c + 1;" (assignment_expression "unaff_s4 = pppppppiStack_19c + 1" (identifier "unaff_s4") (= "=") (binary_expression "pppppppiStack_19c + 1" (identifier "pppppppiStack_19c") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppiVar25 = unaff_s4;" (assignment_expression "pppppppiVar25 = unaff_s4" (identifier "pppppppiVar25") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (do_statement "do {\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      } while (ppppppiVar21 != (int ******)0x0);" (do "do") (compound_statement "{\n        pppppppiVar27 = pppppppiVar22;\n        ppppppiVar21 = *pppppppiVar25;\n        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);\n        pppppppiVar25 = pppppppiVar25 + 1;\n      }" ({ "{") (expression_statement "pppppppiVar27 = pppppppiVar22;" (assignment_expression "pppppppiVar27 = pppppppiVar22" (identifier "pppppppiVar27") (= "=") (identifier "pppppppiVar22")) (; ";")) (expression_statement "ppppppiVar21 = *pppppppiVar25;" (assignment_expression "ppppppiVar21 = *pppppppiVar25" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiVar25" (* "*") (identifier "pppppppiVar25"))) (; ";")) (expression_statement "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);" (assignment_expression "pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1)" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)((int)pppppppiVar27 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar27 + 1)" (( "(") (binary_expression "(int)pppppppiVar27 + 1" (cast_expression "(int)pppppppiVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar27")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppiVar25 = pppppppiVar25 + 1;" (assignment_expression "pppppppiVar25 = pppppppiVar25 + 1" (identifier "pppppppiVar25") (= "=") (binary_expression "pppppppiVar25 + 1" (identifier "pppppppiVar25") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (expression_statement "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);" (assignment_expression "pppppppiVar27 =\n           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" (identifier "pppppppiVar27") (= "=") (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60a4)" (( "(") (binary_expression "puStack_1c0 + -0x60a4" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "((int)((int)pppppppiVar27 + 2) * 4)" (( "(") (binary_expression "(int)((int)pppppppiVar27 + 2) * 4" (cast_expression "(int)((int)pppppppiVar27 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((int)pppppppiVar27 + 2)" (( "(") (binary_expression "(int)pppppppiVar27 + 2" (cast_expression "(int)pppppppiVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar27")) (+ "+") (number_literal "2")) () ")"))) (* "*") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "pppppppiStack_1a0 = pppppppiVar27;" (assignment_expression "pppppppiStack_1a0 = pppppppiVar27" (identifier "pppppppiStack_1a0") (= "=") (identifier "pppppppiVar27")) (; ";")) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        unaff_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" (if "if") (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar27 != (int *******)0x0" (identifier "pppppppiVar27") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_s3 = (int *******)0x0;\n        iStack_1ac = (int)pppppppiVar4 + 3;\n        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;\n        uStack_1a4 = (uint)pppppppiVar7 & 1;\n        unaff_s8 = (int ******)appppppiStack_198;\n        unaff_s2 = pppppppiVar27;\nLAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;\n        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);\n        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);\n        *unaff_s2 = (int ******)pppppppiVar7;\n        pppppppiStack_1b4 = unaff_s2;\n        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;\n        if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }\n        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);\n        pppppppiStack_1a0 = (int *******)0x0;\n        pppppppiVar6 = pppppppiVar25;\n        unaff_s5 = pppppppiVar27;\n      }" ({ "{") (expression_statement "unaff_s3 = (int *******)0x0;" (assignment_expression "unaff_s3 = (int *******)0x0" (identifier "unaff_s3") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "iStack_1ac = (int)pppppppiVar4 + 3;" (assignment_expression "iStack_1ac = (int)pppppppiVar4 + 3" (identifier "iStack_1ac") (= "=") (binary_expression "(int)pppppppiVar4 + 3" (cast_expression "(int)pppppppiVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar4")) (+ "+") (number_literal "3"))) (; ";")) (expression_statement "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;" (assignment_expression "iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4" (identifier "iStack_1a8") (= "=") (binary_expression "(int)unaff_s8 + (int)pppppppiVar4" (cast_expression "(int)unaff_s8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s8")) (+ "+") (cast_expression "(int)pppppppiVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar4")))) (; ";")) (expression_statement "uStack_1a4 = (uint)pppppppiVar7 & 1;" (assignment_expression "uStack_1a4 = (uint)pppppppiVar7 & 1" (identifier "uStack_1a4") (= "=") (binary_expression "(uint)pppppppiVar7 & 1" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "unaff_s8 = (int ******)appppppiStack_198;" (assignment_expression "unaff_s8 = (int ******)appppppiStack_198" (identifier "unaff_s8") (= "=") (cast_expression "(int ******)appppppiStack_198" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "appppppiStack_198"))) (; ";")) (expression_statement "unaff_s2 = pppppppiVar27;" (assignment_expression "unaff_s2 = pppppppiVar27" (identifier "unaff_s2") (= "=") (identifier "pppppppiVar27")) (; ";")) (labeled_statement "LAB_000dd968:\n        pppppppiVar25 = pppppppiVar6;" (statement_identifier "LAB_000dd968") (: ":") (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiVar6")) (; ";"))) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60fc)" (( "(") (binary_expression "puStack_1c0 + -0x60fc" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")")))) (; ";")) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_1c0 + -0x60a4))(iStack_1ac + iVar3)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60a4))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60a4)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60a4)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60a4)" (( "(") (binary_expression "puStack_1c0 + -0x60a4" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iStack_1ac + iVar3)" (( "(") (binary_expression "iStack_1ac + iVar3" (identifier "iStack_1ac") (+ "+") (identifier "iVar3")) () ")"))))) (; ";")) (expression_statement "*unaff_s2 = (int ******)pppppppiVar7;" (assignment_expression "*unaff_s2 = (int ******)pppppppiVar7" (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) (= "=") (cast_expression "(int ******)pppppppiVar7" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar7"))) (; ";")) (expression_statement "pppppppiStack_1b4 = unaff_s2;" (assignment_expression "pppppppiStack_1b4 = unaff_s2" (identifier "pppppppiStack_1b4") (= "=") (identifier "unaff_s2")) (; ";")) (if_statement "if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;" (if "if") (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 != (int *******)0x0" (identifier "pppppppiVar7") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 code_r0x000dd9a4;" (goto "goto") (statement_identifier "code_r0x000dd9a4") (; ";"))) (if_statement "if (unaff_s3 != (int *******)0x0) {\n          unaff_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" (if "if") (parenthesized_expression "(unaff_s3 != (int *******)0x0)" (( "(") (binary_expression "unaff_s3 != (int *******)0x0" (identifier "unaff_s3") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_s3 = pppppppiVar27 + (int)unaff_s3;\n          do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);\n        }" ({ "{") (expression_statement "unaff_s3 = pppppppiVar27 + (int)unaff_s3;" (assignment_expression "unaff_s3 = pppppppiVar27 + (int)unaff_s3" (identifier "unaff_s3") (= "=") (binary_expression "pppppppiVar27 + (int)unaff_s3" (identifier "pppppppiVar27") (+ "+") (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")))) (; ";")) (do_statement "do {\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          } while (unaff_s3 != pppppppiVar27);" (do "do") (compound_statement "{\n            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);\n            pppppppiVar27 = pppppppiVar27 + 1;\n          }" ({ "{") (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5f94)" (( "(") (binary_expression "puStack_1c0 + -0x5f94" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(*pppppppiVar27)" (( "(") (pointer_expression "*pppppppiVar27" (* "*") (identifier "pppppppiVar27")) () ")"))) (; ";")) (expression_statement "pppppppiVar27 = pppppppiVar27 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar27 + 1" (identifier "pppppppiVar27") (= "=") (binary_expression "pppppppiVar27 + 1" (identifier "pppppppiVar27") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(unaff_s3 != pppppppiVar27)" (( "(") (binary_expression "unaff_s3 != pppppppiVar27" (identifier "unaff_s3") (!= "!=") (identifier "pppppppiVar27")) () ")")) (; ";")) (} "}"))) (expression_statement "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);" (call_expression "(**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x5f94))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x5f94)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x5f94)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5f94)" (( "(") (binary_expression "puStack_1c0 + -0x5f94" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_1a0)" (( "(") (identifier "pppppppiStack_1a0") () ")"))) (; ";")) (expression_statement "pppppppiStack_1a0 = (int *******)0x0;" (assignment_expression "pppppppiStack_1a0 = (int *******)0x0" (identifier "pppppppiStack_1a0") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" (identifier "unaff_s5") (= "=") (identifier "pppppppiVar27")) (; ";")) (} "}"))) (} "}")))) (} "}")))) (labeled_statement "LAB_000dd804:\n  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" (statement_identifier "LAB_000dd804") (: ":") (if_statement "if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {\n    return pppppppiStack_1a0;\n  }" (if "if") (parenthesized_expression "(pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4))" (( "(") (binary_expression "pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" (identifier "pppppppiStack_f4") (== "==") (cast_expression "(int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(undefined4 **)(puStack_1c0 + -0x5fb4)" (* "*") (pointer_expression "*(undefined4 **)(puStack_1c0 + -0x5fb4)" (* "*") (cast_expression "(undefined4 **)(puStack_1c0 + -0x5fb4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x5fb4)" (( "(") (binary_expression "puStack_1c0 + -0x5fb4" (identifier "puStack_1c0") (+ "+") (number_literal "-0x5fb4")) () ")"))))))) () ")")) (compound_statement "{\n    return pppppppiStack_1a0;\n  }" ({ "{") (return_statement "return pppppppiStack_1a0;" (return "return") (identifier "pppppppiStack_1a0") (; ";")) (} "}")))) (expression_statement "pcVar33 = *(code **)(puStack_1c0 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(puStack_1c0 + -0x6004)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(puStack_1c0 + -0x6004)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6004)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6004)" (( "(") (binary_expression "puStack_1c0 + -0x6004" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6004")) () ")"))))) (; ";")) (expression_statement "pcVar35 = FUN_000ddacc;" (assignment_expression "pcVar35 = FUN_000ddacc" (identifier "pcVar35") (= "=") (identifier "FUN_000ddacc")) (; ";")) (expression_statement "pppppppiVar25 = pppppppiStack_f4;" (assignment_expression "pppppppiVar25 = pppppppiStack_f4" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiStack_f4")) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_1f8 = pcVar33 + 0x80a74;" (assignment_expression "pcStack_1f8 = pcVar33 + 0x80a74" (identifier "pcStack_1f8") (= "=") (binary_expression "pcVar33 + 0x80a74" (identifier "pcVar33") (+ "+") (number_literal "0x80a74"))) (; ";")) (expression_statement "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);" (assignment_expression "pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0)" (identifier "pppppppiStack_1e4") (= "=") (cast_expression "(int *******)**(int **)(pcVar33 + 0x7aac0)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(int **)(pcVar33 + 0x7aac0)" (* "*") (pointer_expression "*(int **)(pcVar33 + 0x7aac0)" (* "*") (cast_expression "(int **)(pcVar33 + 0x7aac0)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x7aac0)" (( "(") (binary_expression "pcVar33 + 0x7aac0" (identifier "pcVar33") (+ "+") (number_literal "0x7aac0")) () ")"))))))) (; ";")) (expression_statement "pppppppiStack_1e0 = pppppppiVar7;" (assignment_expression "pppppppiStack_1e0 = pppppppiVar7" (identifier "pppppppiStack_1e0") (= "=") (identifier "pppppppiVar7")) (; ";")) (expression_statement "pppppppiStack_1dc = pppppppiVar6;" (assignment_expression "pppppppiStack_1dc = pppppppiVar6" (identifier "pppppppiStack_1dc") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pppppppiStack_1d8 = unaff_s2;" (assignment_expression "pppppppiStack_1d8 = unaff_s2" (identifier "pppppppiStack_1d8") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pcStack_1d4 = pcVar35;" (assignment_expression "pcStack_1d4 = pcVar35" (identifier "pcStack_1d4") (= "=") (identifier "pcVar35")) (; ";")) (expression_statement "uVar5 = (**(code **)(pcVar33 + 0x7aa14))();" (assignment_expression "uVar5 = (**(code **)(pcVar33 + 0x7aa14))()" (identifier "uVar5") (= "=") (call_expression "(**(code **)(pcVar33 + 0x7aa14))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7aa14))" (( "(") (pointer_expression "**(code **)(pcVar33 + 0x7aa14)" (* "*") (pointer_expression "*(code **)(pcVar33 + 0x7aa14)" (* "*") (cast_expression "(code **)(pcVar33 + 0x7aa14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x7aa14)" (( "(") (binary_expression "pcVar33 + 0x7aa14" (identifier "pcVar33") (+ "+") (number_literal "0x7aa14")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppiVar7 = pppppppiVar25;" (assignment_expression "pppppppiVar7 = pppppppiVar25" (identifier "pppppppiVar7") (= "=") (identifier "pppppppiVar25")) (; ";")) (if_statement "if (uVar5 < 2) {\n    FUN_000dce8c();\n  }\n  else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" (if "if") (parenthesized_expression "(uVar5 < 2)" (( "(") (binary_expression "uVar5 < 2" (identifier "uVar5") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n    FUN_000dce8c();\n  }" ({ "{") (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" (identifier "FUN_000dce8c") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" (else "else") (compound_statement "{\n    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();\n    pppppppiVar22 = (int *******)0x0;\n    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);\n    unaff_s2 = pppppppiStack_1f0;\n    if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }\n  }" ({ "{") (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_1f8 + -0x60fc))()" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_1f8 + -0x60fc))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_1f8 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_1f8 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_1f8 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x60fc)" (( "(") (binary_expression "pcStack_1f8 + -0x60fc" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" (identifier "iVar3") (= "=") (call_expression "xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25)" (identifier "xdupmbstowcs") (argument_list "(&pppppppiStack_1f0,0,pppppppiVar25)" (( "(") (pointer_expression "&pppppppiStack_1f0" (& "&") (identifier "pppppppiStack_1f0")) (, ",") (number_literal "0") (, ",") (identifier "pppppppiVar25") () ")")))) (; ";")) (expression_statement "unaff_s2 = pppppppiStack_1f0;" (assignment_expression "unaff_s2 = pppppppiStack_1f0" (identifier "unaff_s2") (= "=") (identifier "pppppppiStack_1f0")) (; ";")) (if_statement "if (iVar3 == -1) {\n      FUN_000dce8c();\n    }\n    else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" (if "if") (parenthesized_expression "(iVar3 == -1)" (( "(") (binary_expression "iVar3 == -1" (identifier "iVar3") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n      FUN_000dce8c();\n    }" ({ "{") (expression_statement "FUN_000dce8c();" (call_expression "FUN_000dce8c()" (identifier "FUN_000dce8c") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" (else "else") (compound_statement "{\n      iVar24 = 0;\n      iVar23 = 0;\n      iVar3 = 0;\n      do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);\n      if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }\nLAB_000ddc04:\n      uStack_1ec = 0;\n      uStack_1e8 = 0;\n      pppppppiVar22 = (int *******)&pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);\n      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);\n      *(undefined1 *)pppppppiVar25 = 0;\n      pppppppiVar7 = pppppppiStack_1f0;\n      (**(code **)(pcStack_1f8 + -0x5f94))();\n    }" ({ "{") (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" (identifier "iVar24") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" (identifier "iVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" (identifier "iVar3") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);" (do "do") (compound_statement "{\n        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;\n        iVar17 = iVar3;\n        iVar12 = iVar3 + 1;\n        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }\n        iVar3 = iVar12;\n        iVar23 = iVar23 + 1;\n        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];\n        iVar24 = iVar24 + 4;\n      }" ({ "{") (if_statement "if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;" (if "if") (parenthesized_expression "(pppppppiStack_1f0 == (int *******)0x0)" (( "(") (binary_expression "pppppppiStack_1f0 == (int *******)0x0" (identifier "pppppppiStack_1f0") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000ddc04;" (goto "goto") (statement_identifier "LAB_000ddc04") (; ";"))) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;" (if "if") (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x0)" (( "(") (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar3]" (identifier "pppppppiStack_1f0") ([ "[") (identifier "iVar3") (] "]")) (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (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_000ddbf8;" (goto "goto") (statement_identifier "LAB_000ddbf8") (; ";"))) (expression_statement "iVar17 = iVar3;" (assignment_expression "iVar17 = iVar3" (identifier "iVar17") (= "=") (identifier "iVar3")) (; ";")) (expression_statement "iVar12 = iVar3 + 1;" (assignment_expression "iVar12 = iVar3 + 1" (identifier "iVar12") (= "=") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" (if "if") (parenthesized_expression "(pppppppiStack_1f0[iVar3] == (int ******)0x5c)" (( "(") (binary_expression "pppppppiStack_1f0[iVar3] == (int ******)0x5c" (subscript_expression "pppppppiStack_1f0[iVar3]" (identifier "pppppppiStack_1f0") ([ "[") (identifier "iVar3") (] "]")) (== "==") (cast_expression "(int ******)0x5c" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x5c"))) () ")")) (compound_statement "{\n          iVar17 = iVar3 + 1;\n          iVar12 = iVar3 + 2;\n        }" ({ "{") (expression_statement "iVar17 = iVar3 + 1;" (assignment_expression "iVar17 = iVar3 + 1" (identifier "iVar17") (= "=") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar12 = iVar3 + 2;" (assignment_expression "iVar12 = iVar3 + 2" (identifier "iVar12") (= "=") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2"))) (; ";")) (} "}"))) (expression_statement "iVar3 = iVar12;" (assignment_expression "iVar3 = iVar12" (identifier "iVar3") (= "=") (identifier "iVar12")) (; ";")) (expression_statement "iVar23 = iVar23 + 1;" (assignment_expression "iVar23 = iVar23 + 1" (identifier "iVar23") (= "=") (binary_expression "iVar23 + 1" (identifier "iVar23") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];" (assignment_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17]" (pointer_expression "*(int *******)((int)pppppppiStack_1f0 + iVar24)" (* "*") (cast_expression "(int *******)((int)pppppppiStack_1f0 + iVar24)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiStack_1f0 + iVar24)" (( "(") (binary_expression "(int)pppppppiStack_1f0 + iVar24" (cast_expression "(int)pppppppiStack_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiStack_1f0")) (+ "+") (identifier "iVar24")) () ")")))) (= "=") (subscript_expression "pppppppiStack_1f0[iVar17]" (identifier "pppppppiStack_1f0") ([ "[") (identifier "iVar17") (] "]"))) (; ";")) (expression_statement "iVar24 = iVar24 + 4;" (assignment_expression "iVar24 = iVar24 + 4" (identifier "iVar24") (= "=") (binary_expression "iVar24 + 4" (identifier "iVar24") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppiStack_1f0[iVar17] != (int ******)0x0)" (( "(") (binary_expression "pppppppiStack_1f0[iVar17] != (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar17]" (identifier "pppppppiStack_1f0") ([ "[") (identifier "iVar17") (] "]")) (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (if_statement "if (pppppppiStack_1f0 != (int *******)0x0) {\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" (if "if") (parenthesized_expression "(pppppppiStack_1f0 != (int *******)0x0)" (( "(") (binary_expression "pppppppiStack_1f0 != (int *******)0x0" (identifier "pppppppiStack_1f0") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "{\nLAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;\n      }" ({ "{") (labeled_statement "LAB_000ddbf8:\n        pppppppiStack_1f0[iVar23] = (int ******)0x0;" (statement_identifier "LAB_000ddbf8") (: ":") (expression_statement "pppppppiStack_1f0[iVar23] = (int ******)0x0;" (assignment_expression "pppppppiStack_1f0[iVar23] = (int ******)0x0" (subscript_expression "pppppppiStack_1f0[iVar23]" (identifier "pppppppiStack_1f0") ([ "[") (identifier "iVar23") (] "]")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";"))) (} "}"))) (labeled_statement "LAB_000ddc04:\n      uStack_1ec = 0;" (statement_identifier "LAB_000ddc04") (: ":") (expression_statement "uStack_1ec = 0;" (assignment_expression "uStack_1ec = 0" (identifier "uStack_1ec") (= "=") (number_literal "0")) (; ";"))) (expression_statement "uStack_1e8 = 0;" (assignment_expression "uStack_1e8 = 0" (identifier "uStack_1e8") (= "=") (number_literal "0")) (; ";")) (expression_statement "pppppppiVar22 = (int *******)&pppppppiStack_1f0;" (assignment_expression "pppppppiVar22 = (int *******)&pppppppiStack_1f0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)&pppppppiStack_1f0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&pppppppiStack_1f0" (& "&") (identifier "pppppppiStack_1f0")))) (; ";")) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);" (call_expression "(**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f9c))" (( "(") (pointer_expression "**(code **)(pcStack_1f8 + -0x5f9c)" (* "*") (pointer_expression "*(code **)(pcStack_1f8 + -0x5f9c)" (* "*") (cast_expression "(code **)(pcStack_1f8 + -0x5f9c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x5f9c)" (( "(") (binary_expression "pcStack_1f8 + -0x5f9c" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x5f9c")) () ")"))))) () ")")) (argument_list "(pppppppiVar25,pppppppiVar22,pppppppiVar6)" (( "(") (identifier "pppppppiVar25") (, ",") (identifier "pppppppiVar22") (, ",") (identifier "pppppppiVar6") () ")"))) (; ";")) (expression_statement "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);" (assignment_expression "pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)((int)pppppppiVar25 + (int)pppppppiVar6)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar25 + (int)pppppppiVar6)" (( "(") (binary_expression "(int)pppppppiVar25 + (int)pppppppiVar6" (cast_expression "(int)pppppppiVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar25")) (+ "+") (cast_expression "(int)pppppppiVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar6"))) () ")")))) (; ";")) (expression_statement "*(undefined1 *)pppppppiVar25 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar25 = 0" (pointer_expression "*(undefined1 *)pppppppiVar25" (* "*") (cast_expression "(undefined1 *)pppppppiVar25" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar25"))) (= "=") (number_literal "0")) (; ";")) (expression_statement "pppppppiVar7 = pppppppiStack_1f0;" (assignment_expression "pppppppiVar7 = pppppppiStack_1f0" (identifier "pppppppiVar7") (= "=") (identifier "pppppppiStack_1f0")) (; ";")) (expression_statement "(**(code **)(pcStack_1f8 + -0x5f94))();" (call_expression "(**(code **)(pcStack_1f8 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_1f8 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_1f8 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_1f8 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_1f8 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x5f94)" (( "(") (binary_expression "pcStack_1f8 + -0x5f94" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}")))) (if_statement "if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" (if "if") (parenthesized_expression "(pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4))" (( "(") (binary_expression "pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)" (identifier "pppppppiStack_1e4") (== "==") (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" (* "*") (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" (* "*") (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" (( "(") (binary_expression "pcStack_1f8 + -0x5fb4" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x5fb4")) () ")"))))))) () ")")) (compound_statement "{\n    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);\n  }" ({ "{") (return_statement "return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);" (return "return") (cast_expression "(int *******)**(int **)(pcStack_1f8 + -0x5fb4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(int **)(pcStack_1f8 + -0x5fb4)" (* "*") (pointer_expression "*(int **)(pcStack_1f8 + -0x5fb4)" (* "*") (cast_expression "(int **)(pcStack_1f8 + -0x5fb4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x5fb4)" (( "(") (binary_expression "pcStack_1f8 + -0x5fb4" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x5fb4")) () ")")))))) (; ";")) (} "}"))) (expression_statement "pcVar33 = *(code **)(pcStack_1f8 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_1f8 + -0x6004)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(pcStack_1f8 + -0x6004)" (* "*") (cast_expression "(code **)(pcStack_1f8 + -0x6004)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1f8 + -0x6004)" (( "(") (binary_expression "pcStack_1f8 + -0x6004" (identifier "pcStack_1f8") (+ "+") (number_literal "-0x6004")) () ")"))))) (; ";")) (expression_statement "pcVar35 = glob_pattern_p;" (assignment_expression "pcVar35 = glob_pattern_p" (identifier "pcVar35") (= "=") (identifier "glob_pattern_p")) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_220 = pcVar33 + 0x808a8;" (assignment_expression "pcStack_220 = pcVar33 + 0x808a8" (identifier "pcStack_220") (= "=") (binary_expression "pcVar33 + 0x808a8" (identifier "pcVar33") (+ "+") (number_literal "0x808a8"))) (; ";")) (expression_statement "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);" (assignment_expression "pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" (identifier "pppppppiStack_214") (= "=") (cast_expression "(int *******)**(undefined4 **)(pcVar33 + 0x7a8f4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a8f4)" (* "*") (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a8f4)" (* "*") (cast_expression "(undefined4 **)(pcVar33 + 0x7a8f4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x7a8f4)" (( "(") (binary_expression "pcVar33 + 0x7a8f4" (identifier "pcVar33") (+ "+") (number_literal "0x7a8f4")) () ")"))))))) (; ";")) (expression_statement "pppppppiStack_210 = pppppppiVar25;" (assignment_expression "pppppppiStack_210 = pppppppiVar25" (identifier "pppppppiStack_210") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "pcStack_20c = pcVar35;" (assignment_expression "pcStack_20c = pcVar35" (identifier "pcStack_20c") (= "=") (identifier "pcVar35")) (; ";")) (expression_statement "iVar3 = (**(code **)(pcVar33 + 0x7a848))();" (assignment_expression "iVar3 = (**(code **)(pcVar33 + 0x7a848))()" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcVar33 + 0x7a848))()" (parenthesized_expression "(**(code **)(pcVar33 + 0x7a848))" (( "(") (pointer_expression "**(code **)(pcVar33 + 0x7a848)" (* "*") (pointer_expression "*(code **)(pcVar33 + 0x7a848)" (* "*") (cast_expression "(code **)(pcVar33 + 0x7a848)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x7a848)" (( "(") (binary_expression "pcVar33 + 0x7a848" (identifier "pcVar33") (+ "+") (number_literal "0x7a848")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar3 == 1) {\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }\n  else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" (if "if") (parenthesized_expression "(iVar3 == 1)" (( "(") (binary_expression "iVar3 == 1" (identifier "iVar3") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n  }" ({ "{") (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000dccf0(pppppppiVar7)" (identifier "FUN_000dccf0") (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" (else "else") (compound_statement "{\n    pppppppiVar22 = (int *******)0x0;\n    pppppppiVar27 = pppppppiVar7;\n    iVar3 = xdupmbstowcs(&pppppppiStack_218);\n    if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }\n  }" ({ "{") (expression_statement "pppppppiVar22 = (int *******)0x0;" (assignment_expression "pppppppiVar22 = (int *******)0x0" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar27 = pppppppiVar7;" (assignment_expression "pppppppiVar27 = pppppppiVar7" (identifier "pppppppiVar27") (= "=") (identifier "pppppppiVar7")) (; ";")) (expression_statement "iVar3 = xdupmbstowcs(&pppppppiStack_218);" (assignment_expression "iVar3 = xdupmbstowcs(&pppppppiStack_218)" (identifier "iVar3") (= "=") (call_expression "xdupmbstowcs(&pppppppiStack_218)" (identifier "xdupmbstowcs") (argument_list "(&pppppppiStack_218)" (( "(") (pointer_expression "&pppppppiStack_218" (& "&") (identifier "pppppppiStack_218")) () ")")))) (; ";")) (if_statement "if (iVar3 == -1) {\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }\n    else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" (if "if") (parenthesized_expression "(iVar3 == -1)" (( "(") (binary_expression "iVar3 == -1" (identifier "iVar3") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);\n      pppppppiVar7 = pppppppiVar27;\n    }" ({ "{") (expression_statement "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);" (assignment_expression "pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)FUN_000dccf0(pppppppiVar7)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000dccf0(pppppppiVar7)" (identifier "FUN_000dccf0") (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))))) (; ";")) (expression_statement "pppppppiVar7 = pppppppiVar27;" (assignment_expression "pppppppiVar7 = pppppppiVar27" (identifier "pppppppiVar7") (= "=") (identifier "pppppppiVar27")) (; ";")) (} "}")) (else_clause "else {\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" (else "else") (compound_statement "{\n      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);\n      while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }\n      pppppppiVar25 = (int *******)0x0;\n      (**(code **)(pcStack_220 + -0x5f94))();\n      pppppppiVar7 = pppppppiStack_218;\n    }" ({ "{") (expression_statement "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);" (assignment_expression "pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" (identifier "pppppppiVar22") (= "=") (cast_expression "(int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(pcStack_220 + -0x7f90) + -0x305c)" (( "(") (binary_expression "*(int *)(pcStack_220 + -0x7f90) + -0x305c" (pointer_expression "*(int *)(pcStack_220 + -0x7f90)" (* "*") (cast_expression "(int *)(pcStack_220 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_220 + -0x7f90)" (( "(") (binary_expression "pcStack_220 + -0x7f90" (identifier "pcStack_220") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x305c")) () ")")))) (; ";")) (while_statement "while( true ) {\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n        ppppppiVar21 = *pppppppiStack_218;\n        pppppppiStack_218 = pppppppiStack_218 + 1;\n        if (ppppppiVar21 == (int ******)0x0) break;\n        uVar5 = (int)ppppppiVar21 - 0x21;\n        if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }\n      }" ({ "{") (expression_statement "ppppppiVar21 = *pppppppiStack_218;" (assignment_expression "ppppppiVar21 = *pppppppiStack_218" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiStack_218" (* "*") (identifier "pppppppiStack_218"))) (; ";")) (expression_statement "pppppppiStack_218 = pppppppiStack_218 + 1;" (assignment_expression "pppppppiStack_218 = pppppppiStack_218 + 1" (identifier "pppppppiStack_218") (= "=") (binary_expression "pppppppiStack_218 + 1" (identifier "pppppppiStack_218") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (ppppppiVar21 == (int ******)0x0) break;" (if "if") (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 == (int ******)0x0" (identifier "ppppppiVar21") (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (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 "uVar5 = (int)ppppppiVar21 - 0x21;" (assignment_expression "uVar5 = (int)ppppppiVar21 - 0x21" (identifier "uVar5") (= "=") (binary_expression "(int)ppppppiVar21 - 0x21" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (- "-") (number_literal "0x21"))) (; ";")) (if_statement "if (uVar5 < 0x3d) {\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" (if "if") (parenthesized_expression "(uVar5 < 0x3d)" (( "(") (binary_expression "uVar5 < 0x3d" (identifier "uVar5") (< "<") (number_literal "0x3d")) () ")")) (compound_statement "{\n                    \n                    \n          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();\n          return pppppppiVar7;\n        }" ({ "{") (expression_statement "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();" (assignment_expression "pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))()" (parenthesized_expression "(*(pcStack_220 + (int)pppppppiVar22[uVar5]))" (( "(") (pointer_expression "*(pcStack_220 + (int)pppppppiVar22[uVar5])" (* "*") (parenthesized_expression "(pcStack_220 + (int)pppppppiVar22[uVar5])" (( "(") (binary_expression "pcStack_220 + (int)pppppppiVar22[uVar5]" (identifier "pcStack_220") (+ "+") (cast_expression "(int)pppppppiVar22[uVar5]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppiVar22[uVar5]" (identifier "pppppppiVar22") ([ "[") (identifier "uVar5") (] "]")))) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}"))) (} "}"))) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 **)(pcStack_220 + -0x5f94))();" (call_expression "(**(code **)(pcStack_220 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_220 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_220 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_220 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_220 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_220 + -0x5f94)" (( "(") (binary_expression "pcStack_220 + -0x5f94" (identifier "pcStack_220") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppiVar7 = pppppppiStack_218;" (assignment_expression "pppppppiVar7 = pppppppiStack_218" (identifier "pppppppiVar7") (= "=") (identifier "pppppppiStack_218")) (; ";")) (} "}")))) (} "}")))) (if_statement "if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {\n    return pppppppiVar25;\n  }" (if "if") (parenthesized_expression "(pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4))" (( "(") (binary_expression "pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" (identifier "pppppppiStack_214") (== "==") (cast_expression "(int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "**(undefined4 **)(pcStack_220 + -0x5fb4)" (* "*") (pointer_expression "*(undefined4 **)(pcStack_220 + -0x5fb4)" (* "*") (cast_expression "(undefined4 **)(pcStack_220 + -0x5fb4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_220 + -0x5fb4)" (( "(") (binary_expression "pcStack_220 + -0x5fb4" (identifier "pcStack_220") (+ "+") (number_literal "-0x5fb4")) () ")"))))))) () ")")) (compound_statement "{\n    return pppppppiVar25;\n  }" ({ "{") (return_statement "return pppppppiVar25;" (return "return") (identifier "pppppppiVar25") (; ";")) (} "}"))) (expression_statement "pcVar33 = *(code **)(pcStack_220 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcStack_220 + -0x6004)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(pcStack_220 + -0x6004)" (* "*") (cast_expression "(code **)(pcStack_220 + -0x6004)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_220 + -0x6004)" (( "(") (binary_expression "pcStack_220 + -0x6004" (identifier "pcStack_220") (+ "+") (number_literal "-0x6004")) () ")"))))) (; ";")) (expression_statement "pcVar35 = glob_vector;" (assignment_expression "pcVar35 = glob_vector" (identifier "pcVar35") (= "=") (identifier "glob_vector")) (; ";")) (expression_statement "pppppppiVar27 = pppppppiStack_214;" (assignment_expression "pppppppiVar27 = pppppppiStack_214" (identifier "pppppppiVar27") (= "=") (identifier "pppppppiStack_214")) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_348 = pcVar33 + 0x80714;" (assignment_expression "pcStack_348 = pcVar33 + 0x80714" (identifier "pcStack_348") (= "=") (binary_expression "pcVar33 + 0x80714" (identifier "pcVar33") (+ "+") (number_literal "0x80714"))) (; ";")) (expression_statement "puVar34 = auStack_358;" (assignment_expression "puVar34 = auStack_358" (identifier "puVar34") (= "=") (identifier "auStack_358")) (; ";")) (expression_statement "puVar8 = auStack_358;" (assignment_expression "puVar8 = auStack_358" (identifier "puVar8") (= "=") (identifier "auStack_358")) (; ";")) (expression_statement "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);" (assignment_expression "pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760)" (identifier "pcStack_25c") (= "=") (cast_expression "(char *)**(undefined4 **)(pcVar33 + 0x7a760)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(pcVar33 + 0x7a760)" (* "*") (pointer_expression "*(undefined4 **)(pcVar33 + 0x7a760)" (* "*") (cast_expression "(undefined4 **)(pcVar33 + 0x7a760)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x7a760)" (( "(") (binary_expression "pcVar33 + 0x7a760" (identifier "pcVar33") (+ "+") (number_literal "0x7a760")) () ")"))))))) (; ";")) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" (identifier "__quote") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar28 = unaff_s5;" (assignment_expression "pppppppiVar28 = unaff_s5" (identifier "pppppppiVar28") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppiStack_304 = pppppppiVar22;" (assignment_expression "pppppppiStack_304 = pppppppiVar22" (identifier "pppppppiStack_304") (= "=") (identifier "pppppppiVar22")) (; ";")) (expression_statement "pppppppiStack_258 = pppppppiVar25;" (assignment_expression "pppppppiStack_258 = pppppppiVar25" (identifier "pppppppiStack_258") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "pppppppiStack_254 = pppppppiVar6;" (assignment_expression "pppppppiStack_254 = pppppppiVar6" (identifier "pppppppiStack_254") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pppppppiStack_250 = unaff_s2;" (assignment_expression "pppppppiStack_250 = unaff_s2" (identifier "pppppppiStack_250") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppiStack_24c = unaff_s3;" (assignment_expression "pppppppiStack_24c = unaff_s3" (identifier "pppppppiStack_24c") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pppppppiStack_248 = unaff_s4;" (assignment_expression "pppppppiStack_248 = unaff_s4" (identifier "pppppppiStack_248") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "pppppppiStack_244 = unaff_s5;" (assignment_expression "pppppppiStack_244 = unaff_s5" (identifier "pppppppiStack_244") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppiStack_240 = unaff_s6;" (assignment_expression "pppppppiStack_240 = unaff_s6" (identifier "pppppppiStack_240") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "pppppppiStack_23c = pppppppiVar4;" (assignment_expression "pppppppiStack_23c = pppppppiVar4" (identifier "pppppppiStack_23c") (= "=") (identifier "pppppppiVar4")) (; ";")) (expression_statement "ppppppiStack_238 = unaff_s8;" (assignment_expression "ppppppiStack_238 = unaff_s8" (identifier "ppppppiStack_238") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pcStack_234 = pcVar35;" (assignment_expression "pcStack_234 = pcVar35" (identifier "pcStack_234") (= "=") (identifier "pcVar35")) (; ";")) (if_statement "if ((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" (if "if") (parenthesized_expression "((pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'))" (( "(") (binary_expression "(pppppppiVar27 == (int *******)0x0) ||\n     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" (parenthesized_expression "(pppppppiVar27 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar27 == (int *******)0x0" (identifier "pppppppiVar27") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "(pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')" (( "(") (comma_expression "pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0'" (assignment_expression "pppppppiVar28 = (int *******)0x0" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (, ",") (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" (* "*") (cast_expression "(char *)pppppppiVar27" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar27"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar3 = FUN_000dd618(pppppppiVar22);\n    if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }\n    puVar34 = auStack_360;\n    pppppppiVar25 = &ppppppiStack_350;\n    ppppppiStack_350 = (int ******)0x0;\n    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);\n    bVar1 = puVar8 == (undefined1 *)0x0;\n    if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }\n    uStack_30c = (uint)bVar1;\n    pppppppiVar28 = (int *******)(uint)!bVar1;\n    pcVar33 = pcStack_348;\n    puVar8 = auStack_360;\n    if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }\nLAB_000ddefc:\n    puVar34 = puVar8;\n    unaff_s2 = (int *******)0x0;\n    goto LAB_000ddf00;\n  }" ({ "{") (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" (identifier "__quote") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "iVar3 = FUN_000dd618(pppppppiVar22);" (assignment_expression "iVar3 = FUN_000dd618(pppppppiVar22)" (identifier "iVar3") (= "=") (call_expression "FUN_000dd618(pppppppiVar22)" (identifier "FUN_000dd618") (argument_list "(pppppppiVar22)" (( "(") (identifier "pppppppiVar22") () ")")))) (; ";")) (if_statement "if (iVar3 < 0) {\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n      pcVar33 = pcStack_348;\n      goto LAB_000de914;\n    }" ({ "{") (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" (identifier "pppppppiVar6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7174)" (( "(") (binary_expression "pcStack_348 + -0x7174" (identifier "pcStack_348") (+ "+") (number_literal "-0x7174")) () ")"))))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (goto_statement "goto LAB_000de914;" (goto "goto") (statement_identifier "LAB_000de914") (; ";")) (} "}"))) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" (identifier "puVar34") (= "=") (identifier "auStack_360")) (; ";")) (expression_statement "pppppppiVar25 = &ppppppiStack_350;" (assignment_expression "pppppppiVar25 = &ppppppiStack_350" (identifier "pppppppiVar25") (= "=") (pointer_expression "&ppppppiStack_350" (& "&") (identifier "ppppppiStack_350"))) (; ";")) (expression_statement "ppppppiStack_350 = (int ******)0x0;" (assignment_expression "ppppppiStack_350 = (int ******)0x0" (identifier "ppppppiStack_350") (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);" (assignment_expression "puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" (identifier "puVar8") (= "=") (cast_expression "(undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(1)" (( "(") (number_literal "1") () ")"))))) (; ";")) (expression_statement "bVar1 = puVar8 == (undefined1 *)0x0;" (assignment_expression "bVar1 = puVar8 == (undefined1 *)0x0" (identifier "bVar1") (= "=") (binary_expression "puVar8 == (undefined1 *)0x0" (identifier "puVar8") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (bVar1) {\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }\n    else {\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" (if "if") (parenthesized_expression "(bVar1)" (( "(") (identifier "bVar1") () ")")) (compound_statement "{\n      uStack_30c = 1;\n      pppppppiVar25 = (int *******)0x0;\n    }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" (else "else") (compound_statement "{\n      puStack_34c = puVar8;\n      *puVar8 = 0;\n      uStack_30c = 0;\n    }" ({ "{") (expression_statement "puStack_34c = puVar8;" (assignment_expression "puStack_34c = puVar8" (identifier "puStack_34c") (= "=") (identifier "puVar8")) (; ";")) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" (identifier "uStack_30c") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "uStack_30c = (uint)bVar1;" (assignment_expression "uStack_30c = (uint)bVar1" (identifier "uStack_30c") (= "=") (cast_expression "(uint)bVar1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar1"))) (; ";")) (expression_statement "pppppppiVar28 = (int *******)(uint)!bVar1;" (assignment_expression "pppppppiVar28 = (int *******)(uint)!bVar1" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)(uint)!bVar1" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (cast_expression "(uint)!bVar1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (unary_expression "!bVar1" (! "!") (identifier "bVar1"))))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (expression_statement "puVar8 = auStack_360;" (assignment_expression "puVar8 = auStack_360" (identifier "puVar8") (= "=") (identifier "auStack_360")) (; ";")) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n      unaff_s2 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" (if "if") (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar27 != (int *******)0x0" (identifier "pppppppiVar27") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 = (int *******)0x0;\n      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;\n      iStack_314 = 1;\n      puVar34 = auStack_360;\n      goto LAB_000ddf3c;\n    }" ({ "{") (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;" (if "if") (parenthesized_expression "(*(char *)pppppppiVar27 == '\0')" (( "(") (binary_expression "*(char *)pppppppiVar27 == '\0'" (pointer_expression "*(char *)pppppppiVar27" (* "*") (cast_expression "(char *)pppppppiVar27" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar27"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000ddf00;" (goto "goto") (statement_identifier "LAB_000ddf00") (; ";"))) (expression_statement "iStack_314 = 1;" (assignment_expression "iStack_314 = 1" (identifier "iStack_314") (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar34 = auStack_360;" (assignment_expression "puVar34 = auStack_360" (identifier "puVar34") (= "=") (identifier "auStack_360")) (; ";")) (goto_statement "goto LAB_000ddf3c;" (goto "goto") (statement_identifier "LAB_000ddf3c") (; ";")) (} "}"))) (labeled_statement "LAB_000ddefc:\n    puVar34 = puVar8;" (statement_identifier "LAB_000ddefc") (: ":") (expression_statement "puVar34 = puVar8;" (assignment_expression "puVar34 = puVar8" (identifier "puVar34") (= "=") (identifier "puVar8")) (; ";"))) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000ddf00;" (goto "goto") (statement_identifier "LAB_000ddf00") (; ";")) (} "}"))) (expression_statement "iStack_314 = 0;" (assignment_expression "iStack_314 = 0" (identifier "iStack_314") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_30c = 0;" (assignment_expression "uStack_30c = 0" (identifier "uStack_30c") (= "=") (number_literal "0")) (; ";")) (expression_statement "pppppppiVar25 = (int *******)0x0;" (assignment_expression "pppppppiVar25 = (int *******)0x0" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000ddf3c:\n  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" (statement_identifier "LAB_000ddf3c") (: ":") (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar27)" (( "(") (identifier "pppppppiVar27") () ")")))) (; ";"))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" (identifier "puVar8") (= "=") (identifier "puVar34")) (; ";")) (if_statement "if (iStack_314 != 0) goto LAB_000ddefc;" (if "if") (parenthesized_expression "(iStack_314 != 0)" (( "(") (binary_expression "iStack_314 != 0" (identifier "iStack_314") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ddefc;" (goto "goto") (statement_identifier "LAB_000ddefc") (; ";"))) (expression_statement "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);" (assignment_expression "iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote)" (identifier "iVar23") (= "=") (call_expression "glob_pattern_p((char *)pppppppiVar27,(int)__quote)" (identifier "glob_pattern_p") (argument_list "((char *)pppppppiVar27,(int)__quote)" (( "(") (cast_expression "(char *)pppppppiVar27" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar27")) (, ",") (cast_expression "(int)__quote" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__quote")) () ")")))) (; ";")) (if_statement "if (iVar23 == 0) {\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }\n  else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" (if "if") (parenthesized_expression "(iVar23 == 0)" (( "(") (binary_expression "iVar23 == 0" (identifier "iVar23") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    __quote = (int *******)0x0;\n    iVar23 = FUN_000dd618(pppppppiStack_304);\n    if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" ({ "{") (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" (identifier "__quote") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "iVar23 = FUN_000dd618(pppppppiStack_304);" (assignment_expression "iVar23 = FUN_000dd618(pppppppiStack_304)" (identifier "iVar23") (= "=") (call_expression "FUN_000dd618(pppppppiStack_304)" (identifier "FUN_000dd618") (argument_list "(pppppppiStack_304)" (( "(") (identifier "pppppppiStack_304") () ")")))) (; ";")) (if_statement "if (-1 < iVar23) {\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" (if "if") (parenthesized_expression "(-1 < iVar23)" (( "(") (binary_expression "-1 < iVar23" (number_literal "-1") (< "<") (identifier "iVar23")) () ")")) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n      pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));\n      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n      if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }\n      goto LAB_000ddefc;\n    }" ({ "{") (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiStack_304)" (( "(") (identifier "pppppppiStack_304") () ")"))))) (; ";")) (expression_statement "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));" (assignment_expression "pppppppiVar6 = (int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)\n                     (**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))\n                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "((undefined1 *)((int)pppppppiVar7 + iVar3 + 2))" (( "(") (cast_expression "(undefined1 *)((int)pppppppiVar7 + iVar3 + 2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiVar7 + iVar3 + 2)" (( "(") (binary_expression "(int)pppppppiVar7 + iVar3 + 2" (binary_expression "(int)pppppppiVar7 + iVar3" (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7")) (+ "+") (identifier "iVar3")) (+ "+") (number_literal "2")) () ")"))) () ")"))))) (; ";")) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (pppppppiVar6 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }\n      else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" (if "if") (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar6 == (int *******)0x0" (identifier "pppppppiVar6") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n      }" ({ "{") (if_statement "if (iVar3 == 0) {\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }\n        else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")) (else_clause "else {\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" (else "else") (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          uStack_30c = 1;\n          pcVar33 = pcStack_348;\n        }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")))) (} "}")) (else_clause "else if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" (else "else") (if_statement "if (iVar3 == 0) {\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }\n      else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        __quote = pppppppiVar27;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        uStack_30c = 1;\n        pcVar33 = pcStack_348;\n      }" ({ "{") (expression_statement "__quote = pppppppiVar27;" (assignment_expression "__quote = pppppppiVar27" (identifier "__quote") (= "=") (identifier "pppppppiVar27")) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar6)" (( "(") (identifier "pppppppiVar6") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")) (else_clause "else {\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" (else "else") (compound_statement "{\n        (**(code **)(pcStack_348 + -0x6074))(iVar3);\n        FUN_000ddacc(iVar3);\n        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);\n        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;\n        (**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);\n        __quote = pppppppiVar6;\n        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);\n        if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }\n        (**(code **)(pcStack_348 + -0x5f94))();\n        pcVar33 = pcStack_348;\n        pppppppiVar25 = (int *******)(puVar34 + 8);\n        *pppppppiVar25 = (int ******)0x0;\n        *(int *)(puVar34 + 0xc) = iVar3;\n        pppppppiVar28 = (int *******)0x1;\n        puVar8 = puVar34 + -8;\n      }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x6074))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6074)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6074)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6074)" (( "(") (binary_expression "pcStack_348 + -0x6074" (identifier "pcStack_348") (+ "+") (number_literal "-0x6074")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "FUN_000ddacc(iVar3);" (call_expression "FUN_000ddacc(iVar3)" (identifier "FUN_000ddacc") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);" (call_expression "(**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6074)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6074)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6074)" (( "(") (binary_expression "pcStack_348 + -0x6074" (identifier "pcStack_348") (+ "+") (number_literal "-0x6074")) () ")"))))) () ")")) (argument_list "(pppppppiVar6,pppppppiStack_304)" (( "(") (identifier "pppppppiVar6") (, ",") (identifier "pppppppiStack_304") () ")"))) (; ";")) (expression_statement "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" (* "*") (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiVar6 + (int)pppppppiVar7)" (( "(") (binary_expression "(int)pppppppiVar6 + (int)pppppppiVar7" (cast_expression "(int)pppppppiVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar6")) (+ "+") (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7"))) () ")")))) (= "=") (number_literal "0x2f")) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x6074))\n                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6074))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6074)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6074)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6074)" (( "(") (binary_expression "pcStack_348 + -0x6074" (identifier "pcStack_348") (+ "+") (number_literal "-0x6074")) () ")"))))) () ")")) (argument_list "((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3)" (( "(") (cast_expression "(undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1))" (( "(") (binary_expression "(int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)" (cast_expression "(int)pppppppiVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar6")) (+ "+") (cast_expression "(int)((int)pppppppiVar7 + 1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((int)pppppppiVar7 + 1)" (( "(") (binary_expression "(int)pppppppiVar7 + 1" (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7")) (+ "+") (number_literal "1")) () ")")))) () ")"))) (, ",") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "__quote = pppppppiVar6;" (assignment_expression "__quote = pppppppiVar6" (identifier "__quote") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);" (assignment_expression "iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" (identifier "iVar23") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6278))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6278)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6278)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6278)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6278)" (( "(") (binary_expression "pcStack_348 + -0x6278" (identifier "pcStack_348") (+ "+") (number_literal "-0x6278")) () ")"))))) () ")")) (argument_list "(3,pppppppiVar6,auStack_300)" (( "(") (number_literal "3") (, ",") (identifier "pppppppiVar6") (, ",") (identifier "auStack_300") () ")")))) (; ";")) (if_statement "if (iVar23 < 0) {\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" (if "if") (parenthesized_expression "(iVar23 < 0)" (( "(") (binary_expression "iVar23 < 0" (identifier "iVar23") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n          (**(code **)(pcStack_348 + -0x5f94))(iVar3);\n          unaff_s2 = (int *******)0x0;\n          pcVar33 = pcStack_348;\n          goto LAB_000ddf00;\n        }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar6)" (( "(") (identifier "pppppppiVar6") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(iVar3);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(iVar3)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (goto_statement "goto LAB_000ddf00;" (goto "goto") (statement_identifier "LAB_000ddf00") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (expression_statement "pppppppiVar25 = (int *******)(puVar34 + 8);" (assignment_expression "pppppppiVar25 = (int *******)(puVar34 + 8)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)(puVar34 + 8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar34 + 8)" (( "(") (binary_expression "puVar34 + 8" (identifier "puVar34") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "*pppppppiVar25 = (int ******)0x0;" (assignment_expression "*pppppppiVar25 = (int ******)0x0" (pointer_expression "*pppppppiVar25" (* "*") (identifier "pppppppiVar25")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "*(int *)(puVar34 + 0xc) = iVar3;" (assignment_expression "*(int *)(puVar34 + 0xc) = iVar3" (pointer_expression "*(int *)(puVar34 + 0xc)" (* "*") (cast_expression "(int *)(puVar34 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + 0xc)" (( "(") (binary_expression "puVar34 + 0xc" (identifier "puVar34") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "pppppppiVar28 = (int *******)0x1;" (assignment_expression "pppppppiVar28 = (int *******)0x1" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)0x1" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "puVar8 = puVar34 + -8;" (assignment_expression "puVar8 = puVar34 + -8" (identifier "puVar8") (= "=") (binary_expression "puVar34 + -8" (identifier "puVar34") (+ "+") (number_literal "-8"))) (; ";")) (} "}")))))) (goto_statement "goto LAB_000ddefc;" (goto "goto") (statement_identifier "LAB_000ddefc") (; ";")) (} "}"))) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" (identifier "pppppppiVar6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7174)" (( "(") (binary_expression "pcStack_348 + -0x7174" (identifier "pcStack_348") (+ "+") (number_literal "-0x7174")) () ")"))))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")) (else_clause "else {\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" (else "else") (compound_statement "{\n    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();\n    if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }\n    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);\n    pcVar33 = pcStack_348;\n  }" ({ "{") (expression_statement "iStack_308 = (**(code **)(pcStack_348 + -0x6288))();" (assignment_expression "iStack_308 = (**(code **)(pcStack_348 + -0x6288))()" (identifier "iStack_308") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x6288))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6288))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6288)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6288)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6288)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6288)" (( "(") (binary_expression "pcStack_348 + -0x6288" (identifier "pcStack_348") (+ "+") (number_literal "-0x6288")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iStack_308 != 0) {\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" (if "if") (parenthesized_expression "(iStack_308 != 0)" (( "(") (binary_expression "iStack_308 != 0" (identifier "iStack_308") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uStack_320 = 1;\n      if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }\n      piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }\n      if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }\n      uStack_330 = (uint)pppppppiVar7 & 0x210;\n      uVar5 = (int)pppppppiVar7 >> 2 & 4;\n      uStack_33c = (uint)pppppppiVar7 & 0x100;\n      uStack_338 = uVar5 | 8;\n      if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }\n      unaff_s2 = (int *******)0x0;\n      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);\n      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);\n      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);\n      pppppppiVar6 = pppppppiVar25;\nLAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\nLAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );\n    }" ({ "{") (expression_statement "uStack_320 = 1;" (assignment_expression "uStack_320 = 1" (identifier "uStack_320") (= "=") (number_literal "1")) (; ";")) (if_statement "if (**(int **)(pcStack_348 + -0x70d8) != 0) {\n        uStack_320 = 5;\n      }" (if "if") (parenthesized_expression "(**(int **)(pcStack_348 + -0x70d8) != 0)" (( "(") (binary_expression "**(int **)(pcStack_348 + -0x70d8) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70d8)" (* "*") (pointer_expression "*(int **)(pcStack_348 + -0x70d8)" (* "*") (cast_expression "(int **)(pcStack_348 + -0x70d8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x70d8)" (( "(") (binary_expression "pcStack_348 + -0x70d8" (identifier "pcStack_348") (+ "+") (number_literal "-0x70d8")) () ")"))))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uStack_320 = 5;\n      }" ({ "{") (expression_statement "uStack_320 = 5;" (assignment_expression "uStack_320 = 5" (identifier "uStack_320") (= "=") (number_literal "5")) (; ";")) (} "}"))) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" (* "*") (cast_expression "(int **)(pcStack_348 + -0x7bf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x7bf8)" (( "(") (binary_expression "pcStack_348 + -0x7bf8" (identifier "pcStack_348") (+ "+") (number_literal "-0x7bf8")) () ")"))))) (; ";")) (if_statement "if (**(int **)(pcStack_348 + -0x70e4) != 0) {\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" (if "if") (parenthesized_expression "(**(int **)(pcStack_348 + -0x70e4) != 0)" (( "(") (binary_expression "**(int **)(pcStack_348 + -0x70e4) != 0" (pointer_expression "**(int **)(pcStack_348 + -0x70e4)" (* "*") (pointer_expression "*(int **)(pcStack_348 + -0x70e4)" (* "*") (cast_expression "(int **)(pcStack_348 + -0x70e4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x70e4)" (( "(") (binary_expression "pcStack_348 + -0x70e4" (identifier "pcStack_348") (+ "+") (number_literal "-0x70e4")) () ")"))))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uStack_320 = uStack_320 | 0x10;\n        piVar15 = *(int **)(pcStack_348 + -0x7bf8);\n      }" ({ "{") (expression_statement "uStack_320 = uStack_320 | 0x10;" (assignment_expression "uStack_320 = uStack_320 | 0x10" (identifier "uStack_320") (= "=") (binary_expression "uStack_320 | 0x10" (identifier "uStack_320") (| "|") (number_literal "0x10"))) (; ";")) (expression_statement "piVar15 = *(int **)(pcStack_348 + -0x7bf8);" (assignment_expression "piVar15 = *(int **)(pcStack_348 + -0x7bf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(pcStack_348 + -0x7bf8)" (* "*") (cast_expression "(int **)(pcStack_348 + -0x7bf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x7bf8)" (( "(") (binary_expression "pcStack_348 + -0x7bf8" (identifier "pcStack_348") (+ "+") (number_literal "-0x7bf8")) () ")"))))) (; ";")) (} "}"))) (if_statement "if (*piVar15 != 0) {\n        uStack_320 = uStack_320 | 0x20;\n      }" (if "if") (parenthesized_expression "(*piVar15 != 0)" (( "(") (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uStack_320 = uStack_320 | 0x20;\n      }" ({ "{") (expression_statement "uStack_320 = uStack_320 | 0x20;" (assignment_expression "uStack_320 = uStack_320 | 0x20" (identifier "uStack_320") (= "=") (binary_expression "uStack_320 | 0x20" (identifier "uStack_320") (| "|") (number_literal "0x20"))) (; ";")) (} "}"))) (expression_statement "uStack_330 = (uint)pppppppiVar7 & 0x210;" (assignment_expression "uStack_330 = (uint)pppppppiVar7 & 0x210" (identifier "uStack_330") (= "=") (binary_expression "(uint)pppppppiVar7 & 0x210" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0x210"))) (; ";")) (expression_statement "uVar5 = (int)pppppppiVar7 >> 2 & 4;" (assignment_expression "uVar5 = (int)pppppppiVar7 >> 2 & 4" (identifier "uVar5") (= "=") (binary_expression "(int)pppppppiVar7 >> 2 & 4" (binary_expression "(int)pppppppiVar7 >> 2" (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7")) (>> ">>") (number_literal "2")) (& "&") (number_literal "4"))) (; ";")) (expression_statement "uStack_33c = (uint)pppppppiVar7 & 0x100;" (assignment_expression "uStack_33c = (uint)pppppppiVar7 & 0x100" (identifier "uStack_33c") (= "=") (binary_expression "(uint)pppppppiVar7 & 0x100" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0x100"))) (; ";")) (expression_statement "uStack_338 = uVar5 | 8;" (assignment_expression "uStack_338 = uVar5 | 8" (identifier "uStack_338") (= "=") (binary_expression "uVar5 | 8" (identifier "uVar5") (| "|") (number_literal "8"))) (; ";")) (if_statement "if (uStack_33c == 0) {\n        uStack_338 = uVar5;\n      }" (if "if") (parenthesized_expression "(uStack_33c == 0)" (( "(") (binary_expression "uStack_33c == 0" (identifier "uStack_33c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uStack_338 = uVar5;\n      }" ({ "{") (expression_statement "uStack_338 = uVar5;" (assignment_expression "uStack_338 = uVar5" (identifier "uStack_338") (= "=") (identifier "uVar5")) (; ";")) (} "}"))) (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);" (assignment_expression "pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" (identifier "pcStack_31c") (= "=") (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x3104)" (( "(") (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x3104" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" (* "*") (cast_expression "(int *)(pcStack_348 + -0x6990)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_348 + -0x6990)" (( "(") (binary_expression "pcStack_348 + -0x6990" (identifier "pcStack_348") (+ "+") (number_literal "-0x6990")) () ")")))) (+ "+") (number_literal "-0x3104")) () ")")))) (; ";")) (expression_statement "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);" (assignment_expression "pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" (identifier "pcStack_334") (= "=") (cast_expression "(code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_348 + -0x6990) + -0x29e8)" (( "(") (binary_expression "*(int *)(pcStack_348 + -0x6990) + -0x29e8" (pointer_expression "*(int *)(pcStack_348 + -0x6990)" (* "*") (cast_expression "(int *)(pcStack_348 + -0x6990)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_348 + -0x6990)" (( "(") (binary_expression "pcStack_348 + -0x6990" (identifier "pcStack_348") (+ "+") (number_literal "-0x6990")) () ")")))) (+ "+") (number_literal "-0x29e8")) () ")")))) (; ";")) (expression_statement "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);" (assignment_expression "uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990)" (identifier "uStack_328") (= "=") (pointer_expression "*(undefined4 *)(pcStack_348 + -0x6990)" (* "*") (cast_expression "(undefined4 *)(pcStack_348 + -0x6990)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_348 + -0x6990)" (( "(") (binary_expression "pcStack_348 + -0x6990" (identifier "pcStack_348") (+ "+") (number_literal "-0x6990")) () ")"))))) (; ";")) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (labeled_statement "LAB_000de028:\n      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (statement_identifier "LAB_000de028") (: ":") (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" (identifier "unaff_s6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7cf8)" (( "(") (binary_expression "pcStack_348 + -0x7cf8" (identifier "pcStack_348") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";"))) (labeled_statement "LAB_000de02c:\n      do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" (statement_identifier "LAB_000de02c") (: ":") (do_statement "do {\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      } while( true );" (do "do") (compound_statement "{\n        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);\n        do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);\n        uVar5 = (**(code **)(pcStack_348 + -0x6060))();\n        if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }\n        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);\n        __quote = pppppppiVar25;\n        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);\n        if (iVar3 != 0) goto LAB_000de028;\n        if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }\n        __quote = (int *******)0x0;\n        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n      }" ({ "{") (expression_statement "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);" (assignment_expression "pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc)" (identifier "pppppppiVar4") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7cfc)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7cfc)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7cfc)" (( "(") (binary_expression "pcStack_348 + -0x7cfc" (identifier "pcStack_348") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";")) (do_statement "do {\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        } while (*piVar15 == 0 && piVar15[1] == 0);" (do "do") (compound_statement "{\n          if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);\n          if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }\n          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);\n          if (piVar15 == (int *)0x0) goto LAB_000de200;\n        }" ({ "{") (if_statement "if (*unaff_s6 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" (if "if") (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" (( "(") (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" (* "*") (identifier "unaff_s6")) (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (} "}"))) (if_statement "if (*pppppppiVar4 != (int ******)0x0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" (if "if") (parenthesized_expression "(*pppppppiVar4 != (int ******)0x0)" (( "(") (binary_expression "*pppppppiVar4 != (int ******)0x0" (pointer_expression "*pppppppiVar4" (* "*") (identifier "pppppppiVar4")) (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (} "}"))) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x6964))(2)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x6964))(2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6964))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6964)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6964)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6964)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6964)" (( "(") (binary_expression "pcStack_348 + -0x6964" (identifier "pcStack_348") (+ "+") (number_literal "-0x6964")) () ")"))))) () ")")) (argument_list "(2)" (( "(") (number_literal "2") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) {\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            uStack_30c = 1;\n            goto LAB_000de200;\n          }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (} "}"))) (expression_statement "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);" (assignment_expression "piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" (identifier "piVar15") (= "=") (cast_expression "(int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x6214))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6214))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6214)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6214)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6214)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6214)" (( "(") (binary_expression "pcStack_348 + -0x6214" (identifier "pcStack_348") (+ "+") (number_literal "-0x6214")) () ")"))))) () ")")) (argument_list "(iStack_308)" (( "(") (identifier "iStack_308") () ")"))))) (; ";")) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000de200;" (if "if") (parenthesized_expression "(piVar15 == (int *)0x0)" (( "(") (binary_expression "piVar15 == (int *)0x0" (identifier "piVar15") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";"))) (} "}")) (while "while") (parenthesized_expression "(*piVar15 == 0 && piVar15[1] == 0)" (( "(") (binary_expression "*piVar15 == 0 && piVar15[1] == 0" (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (== "==") (number_literal "0")) (&& "&&") (binary_expression "piVar15[1] == 0" (subscript_expression "piVar15[1]" (identifier "piVar15") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0"))) () ")")) (; ";")) (expression_statement "uVar5 = (**(code **)(pcStack_348 + -0x6060))();" (assignment_expression "uVar5 = (**(code **)(pcStack_348 + -0x6060))()" (identifier "uVar5") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x6060))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6060))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6060)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6060)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6060)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6060)" (( "(") (binary_expression "pcStack_348 + -0x6060" (identifier "pcStack_348") (+ "+") (number_literal "-0x6060")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (1 < uVar5) {\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" (if "if") (parenthesized_expression "(1 < uVar5)" (( "(") (binary_expression "1 < uVar5" (number_literal "1") (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n          __quote = (int *******)((int)piVar15 + 0x13);\n          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);\n          if (iVar3 != 0) goto LAB_000de028;\n        }" ({ "{") (expression_statement "__quote = (int *******)((int)piVar15 + 0x13);" (assignment_expression "__quote = (int *******)((int)piVar15 + 0x13)" (identifier "__quote") (= "=") (cast_expression "(int *******)((int)piVar15 + 0x13)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)piVar15 + 0x13)" (( "(") (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar15")) (+ "+") (number_literal "0x13")) () ")")))) (; ";")) (expression_statement "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);" (assignment_expression "iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" (identifier "iVar3") (= "=") (call_expression "FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7)" (identifier "FUN_000dd23c") (argument_list "(pppppppiVar27,__quote,pppppppiVar7)" (( "(") (identifier "pppppppiVar27") (, ",") (identifier "__quote") (, ",") (identifier "pppppppiVar7") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) goto LAB_000de028;" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000de028;" (goto "goto") (statement_identifier "LAB_000de028") (; ";"))) (} "}"))) (expression_statement "pppppppiVar25 = (int *******)((int)piVar15 + 0x13);" (assignment_expression "pppppppiVar25 = (int *******)((int)piVar15 + 0x13)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)((int)piVar15 + 0x13)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)piVar15 + 0x13)" (( "(") (binary_expression "(int)piVar15 + 0x13" (cast_expression "(int)piVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar15")) (+ "+") (number_literal "0x13")) () ")")))) (; ";")) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" (identifier "__quote") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);" (assignment_expression "iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" (identifier "iVar3") (= "=") (call_expression "(*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7)" (parenthesized_expression "(*pcStack_31c)" (( "(") (pointer_expression "*pcStack_31c" (* "*") (identifier "pcStack_31c")) () ")")) (argument_list "(pppppppiVar27,pppppppiVar25,pppppppiVar7)" (( "(") (identifier "pppppppiVar27") (, ",") (identifier "pppppppiVar25") (, ",") (identifier "pppppppiVar7") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) goto LAB_000de028;" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000de028;" (goto "goto") (statement_identifier "LAB_000de028") (; ";"))) (if_statement "if (((uint)pppppppiVar7 & 0x18) == 0) {\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }\n        else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 0x18) == 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 0x18) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x18)" (( "(") (binary_expression "(uint)pppppppiVar7 & 0x18" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0x18")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }\n          if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }\n        }" ({ "{") (labeled_statement "LAB_000de13c:\n          if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" (statement_identifier "LAB_000de13c") (: ":") (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) {\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" (( "(") (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }\nLAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);\n            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);\n            if (iVar3 == 1) goto LAB_000de028;\n            if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }\n            pcVar33 = pcStack_348;\n            if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }\n            *unaff_s6 = (int ******)pppppppiVar6;\n            unaff_s6[1] = (int ******)pppppppiVar4;\n            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);\n            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);\n            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n            __quote = pppppppiVar25;\n            pppppppiVar6 = unaff_s6;\n            goto LAB_000de028;\n          }" ({ "{") (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" (( "(") (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_000de658:\n            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (statement_identifier "LAB_000de658") (: ":") (expression_statement "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (identifier "uVar9") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")")))) (; ";"))) (expression_statement "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);" (assignment_expression "__quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9)" (identifier "__quote") (= "=") (cast_expression "(int *******)fnx_fromfs(pppppppiVar25,uVar9)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "fnx_fromfs(pppppppiVar25,uVar9)" (identifier "fnx_fromfs") (argument_list "(pppppppiVar25,uVar9)" (( "(") (identifier "pppppppiVar25") (, ",") (identifier "uVar9") () ")"))))) (; ";")) (expression_statement "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);" (assignment_expression "iVar3 = strmatch(pppppppiVar27,__quote,uStack_320)" (identifier "iVar3") (= "=") (call_expression "strmatch(pppppppiVar27,__quote,uStack_320)" (identifier "strmatch") (argument_list "(pppppppiVar27,__quote,uStack_320)" (( "(") (identifier "pppppppiVar27") (, ",") (identifier "__quote") (, ",") (identifier "uStack_320") () ")")))) (; ";")) (if_statement "if (iVar3 == 1) goto LAB_000de028;" (if "if") (parenthesized_expression "(iVar3 == 1)" (( "(") (binary_expression "iVar3 == 1" (identifier "iVar3") (== "==") (number_literal "1")) () ")")) (goto_statement "goto LAB_000de028;" (goto "goto") (statement_identifier "LAB_000de028") (; ";"))) (if_statement "if (iStack_314 < 100000) {\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }\n            else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" (if "if") (parenthesized_expression "(iStack_314 < 100000)" (( "(") (binary_expression "iStack_314 < 100000" (identifier "iStack_314") (< "<") (number_literal "100000")) () ")")) (compound_statement "{\n              unaff_s6 = (int *******)(puVar34 + 8);\n              iStack_314 = iStack_314 + 8;\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              puVar34 = puVar34 + -8;\n            }" ({ "{") (expression_statement "unaff_s6 = (int *******)(puVar34 + 8);" (assignment_expression "unaff_s6 = (int *******)(puVar34 + 8)" (identifier "unaff_s6") (= "=") (cast_expression "(int *******)(puVar34 + 8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar34 + 8)" (( "(") (binary_expression "puVar34 + 8" (identifier "puVar34") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "iStack_314 = iStack_314 + 8;" (assignment_expression "iStack_314 = iStack_314 + 8" (identifier "iStack_314") (= "=") (binary_expression "iStack_314 + 8" (identifier "iStack_314") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")")))) (; ";")) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "puVar34 = puVar34 + -8;" (assignment_expression "puVar34 = puVar34 + -8" (identifier "puVar34") (= "=") (binary_expression "puVar34 + -8" (identifier "puVar34") (+ "+") (number_literal "-8"))) (; ";")) (} "}")) (else_clause "else {\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" (else "else") (compound_statement "{\n              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n              if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }\n              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);\n              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);\n              if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }\n            }" ({ "{") (expression_statement "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (identifier "unaff_s6") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(8)" (( "(") (number_literal "8") () ")"))))) (; ";")) (if_statement "if (unaff_s2 == (int *******)0x0) {\n                unaff_s2 = unaff_s6;\n              }" (if "if") (parenthesized_expression "(unaff_s2 == (int *******)0x0)" (( "(") (binary_expression "unaff_s2 == (int *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                unaff_s2 = unaff_s6;\n              }" ({ "{") (expression_statement "unaff_s2 = unaff_s6;" (assignment_expression "unaff_s2 = unaff_s6" (identifier "unaff_s2") (= "=") (identifier "unaff_s6")) (; ";")) (} "}"))) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")")))) (; ";")) (expression_statement "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);" (assignment_expression "pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if (unaff_s6 == (int *******)0x0) {\n                if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" (if "if") (parenthesized_expression "(unaff_s6 == (int *******)0x0)" (( "(") (binary_expression "unaff_s6 == (int *******)0x0" (identifier "unaff_s6") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }\n                goto LAB_000de200;\n              }" ({ "{") (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n                  uStack_30c = 1;\n                }\n                else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" (if "if") (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar4 == (int *******)0x0" (identifier "pppppppiVar4") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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                  uStack_30c = 1;\n                }" ({ "{") (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" (else "else") (compound_statement "{\n                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);\n                  uStack_30c = 1;\n                }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar4)" (( "(") (identifier "pppppppiVar4") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (} "}")))) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" (if "if") (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar4 == (int *******)0x0" (identifier "pppppppiVar4") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 **)(pcStack_348 + -0x5f94))(unaff_s6);\n              uStack_30c = 1;\n              pppppppiVar4 = (int *******)0x0;\n              goto LAB_000de200;\n            }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(unaff_s6)" (( "(") (identifier "unaff_s6") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (expression_statement "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (} "}"))) (expression_statement "*unaff_s6 = (int ******)pppppppiVar6;" (assignment_expression "*unaff_s6 = (int ******)pppppppiVar6" (pointer_expression "*unaff_s6" (* "*") (identifier "unaff_s6")) (= "=") (cast_expression "(int ******)pppppppiVar6" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar6"))) (; ";")) (expression_statement "unaff_s6[1] = (int ******)pppppppiVar4;" (assignment_expression "unaff_s6[1] = (int ******)pppppppiVar4" (subscript_expression "unaff_s6[1]" (identifier "unaff_s6") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int ******)pppppppiVar4" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar4"))) (; ";")) (expression_statement "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);" (assignment_expression "iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcVar33 + -0x60fc))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcVar33 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcVar33 + -0x60fc)" (* "*") (cast_expression "(code **)(pcVar33 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x60fc)" (( "(") (binary_expression "pcVar33 + -0x60fc" (identifier "pcVar33") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")")))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f88)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f88)" (( "(") (binary_expression "pcStack_348 + -0x5f88" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f88")) () ")"))))) () ")")) (argument_list "(pppppppiVar4,pppppppiVar25,iVar3 + 1)" (( "(") (identifier "pppppppiVar4") (, ",") (identifier "pppppppiVar25") (, ",") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")"))) (; ";")) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)((int)pppppppiVar28 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar28 + 1)" (( "(") (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "__quote = pppppppiVar25;" (assignment_expression "__quote = pppppppiVar25" (identifier "__quote") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "pppppppiVar6 = unaff_s6;" (assignment_expression "pppppppiVar6 = unaff_s6" (identifier "pppppppiVar6") (= "=") (identifier "unaff_s6")) (; ";")) (goto_statement "goto LAB_000de028;" (goto "goto") (statement_identifier "LAB_000de028") (; ";")) (} "}")))) (if_statement "if (iStack_32c == 0) {\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" (if "if") (parenthesized_expression "(iStack_32c == 0)" (( "(") (binary_expression "iStack_32c == 0" (identifier "iStack_32c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            __quote = pppppppiStack_324;\n            unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);\n            pppppppiStack_340 = unaff_s6;\n            if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }\n            goto LAB_000de180;\n          }" ({ "{") (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" (identifier "__quote") (= "=") (identifier "pppppppiStack_324")) (; ";")) (expression_statement "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);" (assignment_expression "unaff_s6 = (int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" (identifier "unaff_s6") (= "=") (cast_expression "(int *******)\n                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" (identifier "glob_vector") (argument_list "(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff)" (( "(") (identifier "pppppppiVar27") (, ",") (identifier "pppppppiStack_324") (, ",") (binary_expression "(uint)pppppppiVar7 & 0xfffffdff" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0xfffffdff")) () ")"))))) (; ";")) (expression_statement "pppppppiStack_340 = unaff_s6;" (assignment_expression "pppppppiStack_340 = unaff_s6" (identifier "pppppppiStack_340") (= "=") (identifier "unaff_s6")) (; ";")) (if_statement "if (unaff_s6 != (int *******)0x0) {\n              if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" (if "if") (parenthesized_expression "(unaff_s6 != (int *******)0x0)" (( "(") (binary_expression "unaff_s6 != (int *******)0x0" (identifier "unaff_s6") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }\n              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }\n            }" ({ "{") (if_statement "if (*unaff_s6 != (int ******)0x0) {\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" (if "if") (parenthesized_expression "(*unaff_s6 != (int ******)0x0)" (( "(") (binary_expression "*unaff_s6 != (int ******)0x0" (pointer_expression "*unaff_s6" (* "*") (identifier "unaff_s6")) (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                iStack_318 = iStack_32c;\n                pppppppiStack_310 = (int *******)0x0;\n                pppppppiVar4 = (int *******)0x0;\n                goto LAB_000de4c4;\n              }" ({ "{") (expression_statement "iStack_318 = iStack_32c;" (assignment_expression "iStack_318 = iStack_32c" (identifier "iStack_318") (= "=") (identifier "iStack_32c")) (; ";")) (expression_statement "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" (identifier "pppppppiStack_310") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiVar4 = (int *******)0x0;" (assignment_expression "pppppppiVar4 = (int *******)0x0" (identifier "pppppppiVar4") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000de4c4;" (goto "goto") (statement_identifier "LAB_000de4c4") (; ";")) (} "}"))) (if_statement "if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" (if "if") (parenthesized_expression "(unaff_s6 != *(int ********)(pcStack_348 + -0x7174))" (( "(") (binary_expression "unaff_s6 != *(int ********)(pcStack_348 + -0x7174)" (identifier "unaff_s6") (!= "!=") (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7174)" (( "(") (binary_expression "pcStack_348 + -0x7174" (identifier "pcStack_348") (+ "+") (number_literal "-0x7174")) () ")"))))) () ")")) (compound_statement "{\n                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);\n              }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(unaff_s6)" (( "(") (identifier "unaff_s6") () ")"))) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_000de180;" (goto "goto") (statement_identifier "LAB_000de180") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" (else "else") (compound_statement "{\n          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);\n          __quote = pppppppiVar7;\n          iStack_32c = (*pcStack_334)(pppppppiStack_324);\n          if (-1 < iStack_32c) goto LAB_000de13c;\n          if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }\n          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;\n        }" ({ "{") (expression_statement "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);" (assignment_expression "pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" (identifier "pppppppiStack_324") (= "=") (cast_expression "(int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338)" (identifier "sh_makepath") (argument_list "(pppppppiStack_304,pppppppiVar25,uStack_338)" (( "(") (identifier "pppppppiStack_304") (, ",") (identifier "pppppppiVar25") (, ",") (identifier "uStack_338") () ")"))))) (; ";")) (expression_statement "__quote = pppppppiVar7;" (assignment_expression "__quote = pppppppiVar7" (identifier "__quote") (= "=") (identifier "pppppppiVar7")) (; ";")) (expression_statement "iStack_32c = (*pcStack_334)(pppppppiStack_324);" (assignment_expression "iStack_32c = (*pcStack_334)(pppppppiStack_324)" (identifier "iStack_32c") (= "=") (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" (( "(") (pointer_expression "*pcStack_334" (* "*") (identifier "pcStack_334")) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")")))) (; ";")) (if_statement "if (-1 < iStack_32c) goto LAB_000de13c;" (if "if") (parenthesized_expression "(-1 < iStack_32c)" (( "(") (binary_expression "-1 < iStack_32c" (number_literal "-1") (< "<") (identifier "iStack_32c")) () ")")) (goto_statement "goto LAB_000de13c;" (goto "goto") (statement_identifier "LAB_000de13c") (; ";"))) (if_statement "if (((uint)pppppppiVar7 & 8) != 0) {\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 8) != 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 8) != 0" (parenthesized_expression "((uint)pppppppiVar7 & 8)" (( "(") (binary_expression "(uint)pppppppiVar7 & 8" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);\n            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);\n            goto LAB_000de02c;\n          }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")"))) (; ";")) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" (identifier "unaff_s6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7cf8)" (( "(") (binary_expression "pcStack_348 + -0x7cf8" (identifier "pcStack_348") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (goto_statement "goto LAB_000de02c;" (goto "goto") (statement_identifier "LAB_000de02c") (; ";")) (} "}"))) (if_statement "if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;" (if "if") (parenthesized_expression "(((uint)pppppppiVar7 & 0x10) == 0)" (( "(") (binary_expression "((uint)pppppppiVar7 & 0x10) == 0" (parenthesized_expression "((uint)pppppppiVar7 & 0x10)" (( "(") (binary_expression "(uint)pppppppiVar7 & 0x10" (cast_expression "(uint)pppppppiVar7" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppiVar7")) (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000de658;" (goto "goto") (statement_identifier "LAB_000de658") (; ";"))) (} "}")))) (expression_statement "__quote = (int *******)0x0;" (assignment_expression "__quote = (int *******)0x0" (identifier "__quote") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))\n        goto LAB_000de180;" (if "if") (parenthesized_expression "((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))" (( "(") (binary_expression "(iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" (parenthesized_expression "(iStack_32c != -2)" (( "(") (binary_expression "iStack_32c != -2" (identifier "iStack_32c") (!= "!=") (number_literal "-2")) () ")")) (|| "||") (parenthesized_expression "(iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0)" (( "(") (comma_expression "iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0" (assignment_expression "iVar3 = (*pcStack_334)(pppppppiStack_324)" (identifier "iVar3") (= "=") (call_expression "(*pcStack_334)(pppppppiStack_324)" (parenthesized_expression "(*pcStack_334)" (( "(") (pointer_expression "*pcStack_334" (* "*") (identifier "pcStack_334")) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")")))) (, ",") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_000de180;" (goto "goto") (statement_identifier "LAB_000de180") (; ";"))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")"))) (; ";")) (expression_statement "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);" (assignment_expression "unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8)" (identifier "unaff_s6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7cf8)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7cf8)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7cf8)" (( "(") (binary_expression "pcStack_348 + -0x7cf8" (identifier "pcStack_348") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (expression_statement "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);" (assignment_expression "pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174)" (identifier "pppppppiVar6") (= "=") (pointer_expression "*(int ********)(pcStack_348 + -0x7174)" (* "*") (cast_expression "(int ********)(pcStack_348 + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(pcStack_348 + -0x7174)" (( "(") (binary_expression "pcStack_348 + -0x7174" (identifier "pcStack_348") (+ "+") (number_literal "-0x7174")) () ")"))))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")))) (goto_statement "goto LAB_000de914;" (goto "goto") (statement_identifier "LAB_000de914") (; ";")) (labeled_statement "code_r0x000dd9a4:\n  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" (statement_identifier "code_r0x000dd9a4") (: ":") (expression_statement "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6074)" (( "(") (binary_expression "puStack_1c0 + -0x6074" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6074")) () ")"))))) () ")")) (argument_list "(pppppppiVar7,iStack_1b0)" (( "(") (identifier "pppppppiVar7") (, ",") (identifier "iStack_1b0") () ")"))) (; ";"))) (if_statement "if (unaff_s6 != (int *******)0x2f) {\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" (if "if") (parenthesized_expression "(unaff_s6 != (int *******)0x2f)" (( "(") (binary_expression "unaff_s6 != (int *******)0x2f" (identifier "unaff_s6") (!= "!=") (cast_expression "(int *******)0x2f" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2f"))) () ")")) (compound_statement "{\n    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;\n  }" ({ "{") (expression_statement "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;" (assignment_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f" (pointer_expression "*(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" (* "*") (cast_expression "(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppiVar7 + (int)pppppppiVar4)" (( "(") (binary_expression "(int)pppppppiVar7 + (int)pppppppiVar4" (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7")) (+ "+") (cast_expression "(int)pppppppiVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar4"))) () ")")))) (= "=") (number_literal "0x2f")) (; ";")) (} "}"))) (expression_statement "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);" (call_expression "(**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6074))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x6074)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x6074)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6074)" (( "(") (binary_expression "puStack_1c0 + -0x6074" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6074")) () ")"))))) () ")")) (argument_list "((int)pppppppiVar7 + iStack_1a8)" (( "(") (binary_expression "(int)pppppppiVar7 + iStack_1a8" (cast_expression "(int)pppppppiVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar7")) (+ "+") (identifier "iStack_1a8")) () ")"))) (; ";")) (if_statement "if (uStack_1a4 != 0) {\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" (if "if") (parenthesized_expression "(uStack_1a4 != 0)" (( "(") (binary_expression "uStack_1a4 != 0" (identifier "uStack_1a4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    pppppppiVar25 = (int *******)*pppppppiStack_1b4;\n    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);\n    pppppppiVar6 = pppppppiStack_1b4;\n    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }\n  }" ({ "{") (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_1b4;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_1b4" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)*pppppppiStack_1b4" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiStack_1b4" (* "*") (identifier "pppppppiStack_1b4")))) (; ";")) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x6258))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x6258)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x6258)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x6258)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x6258)" (( "(") (binary_expression "puStack_1c0 + -0x6258" (identifier "puStack_1c0") (+ "+") (number_literal "-0x6258")) () ")"))))) () ")")) (argument_list "(3,pppppppiVar25,unaff_s8)" (( "(") (number_literal "3") (, ",") (identifier "pppppppiVar25") (, ",") (identifier "unaff_s8") () ")")))) (; ";")) (expression_statement "pppppppiVar6 = pppppppiStack_1b4;" (assignment_expression "pppppppiVar6 = pppppppiStack_1b4" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiStack_1b4")) (; ";")) (if_statement "if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" (if "if") (parenthesized_expression "((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000))" (( "(") (binary_expression "(iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)" (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((uStack_180 & 0xf000) == 0x4000)" (( "(") (binary_expression "(uStack_180 & 0xf000) == 0x4000" (parenthesized_expression "(uStack_180 & 0xf000)" (( "(") (binary_expression "uStack_180 & 0xf000" (identifier "uStack_180") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (compound_statement "{\n      ppppppiVar21 = *pppppppiStack_1b4;\n      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);\n      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);\n      *(undefined1 *)pppppppiVar7 = 0x2f;\n      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;\n    }" ({ "{") (expression_statement "ppppppiVar21 = *pppppppiStack_1b4;" (assignment_expression "ppppppiVar21 = *pppppppiStack_1b4" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiStack_1b4" (* "*") (identifier "pppppppiStack_1b4"))) (; ";")) (expression_statement "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);" (assignment_expression "iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(puStack_1c0 + -0x60fc))" (( "(") (pointer_expression "**(code **)(puStack_1c0 + -0x60fc)" (* "*") (pointer_expression "*(code **)(puStack_1c0 + -0x60fc)" (* "*") (cast_expression "(code **)(puStack_1c0 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_1c0 + -0x60fc)" (( "(") (binary_expression "puStack_1c0 + -0x60fc" (identifier "puStack_1c0") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")")))) (; ";")) (expression_statement "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);" (assignment_expression "pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)((int)ppppppiVar21 + iVar3)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppiVar21 + iVar3)" (( "(") (binary_expression "(int)ppppppiVar21 + iVar3" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (+ "+") (identifier "iVar3")) () ")")))) (; ";")) (expression_statement "*(undefined1 *)pppppppiVar7 = 0x2f;" (assignment_expression "*(undefined1 *)pppppppiVar7 = 0x2f" (pointer_expression "*(undefined1 *)pppppppiVar7" (* "*") (cast_expression "(undefined1 *)pppppppiVar7" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar7"))) (= "=") (number_literal "0x2f")) (; ";")) (expression_statement "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0" (pointer_expression "*(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" (* "*") (cast_expression "(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)*pppppppiVar6 + iVar3 + 1)" (( "(") (binary_expression "(int)*pppppppiVar6 + iVar3 + 1" (binary_expression "(int)*pppppppiVar6 + iVar3" (cast_expression "(int)*pppppppiVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*pppppppiVar6" (* "*") (identifier "pppppppiVar6"))) (+ "+") (identifier "iVar3")) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}"))) (expression_statement "unaff_s3 = (int *******)((int)unaff_s3 + 1);" (assignment_expression "unaff_s3 = (int *******)((int)unaff_s3 + 1)" (identifier "unaff_s3") (= "=") (cast_expression "(int *******)((int)unaff_s3 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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")) () ")")))) (; ";")) (expression_statement "iVar3 = (int)unaff_s3 * 4;" (assignment_expression "iVar3 = (int)unaff_s3 * 4" (identifier "iVar3") (= "=") (binary_expression "(int)unaff_s3 * 4" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "pppppppiVar6 = (int *******)*unaff_s4;" (assignment_expression "pppppppiVar6 = (int *******)*unaff_s4" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)*unaff_s4" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*unaff_s4" (* "*") (identifier "unaff_s4")))) (; ";")) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" (identifier "unaff_s2") (= "=") (binary_expression "unaff_s2 + 1" (identifier "unaff_s2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "unaff_s4 = unaff_s4 + 1;" (assignment_expression "unaff_s4 = unaff_s4 + 1" (identifier "unaff_s4") (= "=") (binary_expression "unaff_s4 + 1" (identifier "unaff_s4") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "unaff_s5 = pppppppiVar27;" (assignment_expression "unaff_s5 = pppppppiVar27" (identifier "unaff_s5") (= "=") (identifier "pppppppiVar27")) (; ";")) (if_statement "if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;" (if "if") (parenthesized_expression "(pppppppiVar6 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar6 == (int *******)0x0" (identifier "pppppppiVar6") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000dda68;" (goto "goto") (statement_identifier "LAB_000dda68") (; ";"))) (goto_statement "goto LAB_000dd968;" (goto "goto") (statement_identifier "LAB_000dd968") (; ";")) (labeled_statement "LAB_000de4c4:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (statement_identifier "LAB_000de4c4") (: ":") (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(8)" (( "(") (number_literal "8") () ")"))))) (; ";"))) (if_statement "if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;" (if "if") (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar25 != (int *******)0x0" (identifier "pppppppiVar25") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 code_r0x000de4dc;" (goto "goto") (statement_identifier "code_r0x000de4dc") (; ";"))) (if_statement "if (pppppppiStack_310 != (int *******)0x0) {\n    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" (if "if") (parenthesized_expression "(pppppppiStack_310 != (int *******)0x0)" (( "(") (binary_expression "pppppppiStack_310 != (int *******)0x0" (identifier "pppppppiStack_310") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);\n    pppppppiStack_310 = (int *******)0x0;\n  }" ({ "{") (do_statement "do {\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    } while (pppppppiVar25 != (int *******)0x0);" (do "do") (compound_statement "{\n      pppppppiVar25 = (int *******)*pppppppiStack_310;\n      (**(code **)(pcStack_348 + -0x5f94))();\n      pppppppiStack_310 = pppppppiVar25;\n    }" ({ "{") (expression_statement "pppppppiVar25 = (int *******)*pppppppiStack_310;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiStack_310" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)*pppppppiStack_310" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiStack_310" (* "*") (identifier "pppppppiStack_310")))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))();" (call_expression "(**(code **)(pcStack_348 + -0x5f94))()" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" (identifier "pppppppiStack_310") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppiVar25 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar25 != (int *******)0x0" (identifier "pppppppiVar25") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "pppppppiStack_310 = (int *******)0x0;" (assignment_expression "pppppppiStack_310 = (int *******)0x0" (identifier "pppppppiStack_310") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_340)" (( "(") (identifier "pppppppiStack_340") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000de200;" (goto "goto") (statement_identifier "LAB_000de200") (; ";")) (labeled_statement "code_r0x000de4dc:\n  if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" (statement_identifier "code_r0x000de4dc") (: ":") (if_statement "if (pppppppiVar4 == (int *******)0x0) {\n    pppppppiVar4 = pppppppiVar25;\n  }" (if "if") (parenthesized_expression "(pppppppiVar4 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar4 == (int *******)0x0" (identifier "pppppppiVar4") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    pppppppiVar4 = pppppppiVar25;\n  }" ({ "{") (expression_statement "pppppppiVar4 = pppppppiVar25;" (assignment_expression "pppppppiVar4 = pppppppiVar25" (identifier "pppppppiVar4") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}")))) (expression_statement "*pppppppiVar25 = (int ******)pppppppiStack_310;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiStack_310" (pointer_expression "*pppppppiVar25" (* "*") (identifier "pppppppiVar25")) (= "=") (cast_expression "(int ******)pppppppiStack_310" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiStack_310"))) (; ";")) (expression_statement "pppppppiVar25[1] = *unaff_s6;" (assignment_expression "pppppppiVar25[1] = *unaff_s6" (subscript_expression "pppppppiVar25[1]" (identifier "pppppppiVar25") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*unaff_s6" (* "*") (identifier "unaff_s6"))) (; ";")) (expression_statement "iStack_318 = iStack_318 + 1;" (assignment_expression "iStack_318 = iStack_318 + 1" (identifier "iStack_318") (= "=") (binary_expression "iStack_318 + 1" (identifier "iStack_318") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" (identifier "unaff_s6") (= "=") (binary_expression "unaff_s6 + 1" (identifier "unaff_s6") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppiStack_310 = pppppppiVar25;" (assignment_expression "pppppppiStack_310 = pppppppiVar25" (identifier "pppppppiStack_310") (= "=") (identifier "pppppppiVar25")) (; ";")) (if_statement "if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;" (if "if") (parenthesized_expression "(*unaff_s6 == (int ******)0x0)" (( "(") (binary_expression "*unaff_s6 == (int ******)0x0" (pointer_expression "*unaff_s6" (* "*") (identifier "unaff_s6")) (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto code_r0x000de510;" (goto "goto") (statement_identifier "code_r0x000de510") (; ";"))) (goto_statement "goto LAB_000de4c4;" (goto "goto") (statement_identifier "LAB_000de4c4") (; ";")) (labeled_statement "LAB_000df004:\n  puVar31 = puVar31 + 1;" (statement_identifier "LAB_000df004") (: ":") (expression_statement "puVar31 = puVar31 + 1;" (assignment_expression "puVar31 = puVar31 + 1" (identifier "puVar31") (= "=") (binary_expression "puVar31 + 1" (identifier "puVar31") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "pcVar29 = (char *)*puVar31;" (assignment_expression "pcVar29 = (char *)*puVar31" (identifier "pcVar29") (= "=") (cast_expression "(char *)*puVar31" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar31" (* "*") (identifier "puVar31")))) (; ";")) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(puVar8 + -0x30)" (* "*") (cast_expression "(int **)(puVar8 + -0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")"))))) (; ";")) (if_statement "if (pcVar29 == (char *)0x0) {\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" (if "if") (parenthesized_expression "(pcVar29 == (char *)0x0)" (( "(") (binary_expression "pcVar29 == (char *)0x0" (identifier "pcVar29") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }\n    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n    return pppppppiVar7;\n  }" ({ "{") (labeled_statement "LAB_000df34c:\n    if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" (statement_identifier "LAB_000df34c") (: ":") (if_statement "if (*piVar15 != 0) {\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" (if "if") (parenthesized_expression "(*piVar15 != 0)" (( "(") (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      pcVar33 = *(code **)(iVar23 + -0x5f94);\n      do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);\n    }" ({ "{") (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (do_statement "do {\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      } while (*piVar15 != 0);" (do "do") (compound_statement "{\n        piVar15 = piVar15 + 1;\n        (*pcVar33)();\n        iVar23 = *(int *)(puVar8 + -0x50);\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n      }" ({ "{") (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" (identifier "piVar15") (= "=") (binary_expression "piVar15 + 1" (identifier "piVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*piVar15 != 0)" (( "(") (binary_expression "*piVar15 != 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}")))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" (( "(") (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}"))) (goto_statement "goto LAB_000df010;" (goto "goto") (statement_identifier "LAB_000df010") (; ";")) (labeled_statement "code_r0x000de510:\n  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (statement_identifier "code_r0x000de510") (: ":") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_340)" (( "(") (identifier "pppppppiStack_340") () ")"))) (; ";"))) (if_statement "if (iStack_318 != 0) {\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" (if "if") (parenthesized_expression "(iStack_318 != 0)" (( "(") (binary_expression "iStack_318 != 0" (identifier "iStack_318") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }\n    *pppppppiVar4 = (int ******)pppppppiVar6;\n    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);\n    pppppppiVar6 = pppppppiVar25;\n  }" ({ "{") (if_statement "if (unaff_s2 == (int *******)0x0) {\n      unaff_s2 = pppppppiVar4;\n    }" (if "if") (parenthesized_expression "(unaff_s2 == (int *******)0x0)" (( "(") (binary_expression "unaff_s2 == (int *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      unaff_s2 = pppppppiVar4;\n    }" ({ "{") (expression_statement "unaff_s2 = pppppppiVar4;" (assignment_expression "unaff_s2 = pppppppiVar4" (identifier "unaff_s2") (= "=") (identifier "pppppppiVar4")) (; ";")) (} "}"))) (expression_statement "*pppppppiVar4 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar4 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar4" (* "*") (identifier "pppppppiVar4")) (= "=") (cast_expression "(int ******)pppppppiVar6" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar6"))) (; ";")) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318)" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)((int)pppppppiVar28 + iStack_318)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar28 + iStack_318)" (( "(") (binary_expression "(int)pppppppiVar28 + iStack_318" (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28")) (+ "+") (identifier "iStack_318")) () ")")))) (; ";")) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}"))) (labeled_statement "LAB_000de180:\n  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (statement_identifier "LAB_000de180") (: ":") (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(8)" (( "(") (number_literal "8") () ")"))))) (; ";"))) (if_statement "if (unaff_s2 == (int *******)0x0) {\n    unaff_s2 = pppppppiVar25;\n  }" (if "if") (parenthesized_expression "(unaff_s2 == (int *******)0x0)" (( "(") (binary_expression "unaff_s2 == (int *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    unaff_s2 = pppppppiVar25;\n  }" ({ "{") (expression_statement "unaff_s2 = pppppppiVar25;" (assignment_expression "unaff_s2 = pppppppiVar25" (identifier "unaff_s2") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}"))) (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")")))) (; ";")) (expression_statement "unaff_s6 = (int *******)(iVar3 + 1);" (assignment_expression "unaff_s6 = (int *******)(iVar3 + 1)" (identifier "unaff_s6") (= "=") (cast_expression "(int *******)(iVar3 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" (identifier "ppppppiVar21") (= "=") (cast_expression "(int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(unaff_s6)" (( "(") (identifier "unaff_s6") () ")"))))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiStack_324;" (assignment_expression "pppppppiVar22 = pppppppiStack_324" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiStack_324")) (; ";")) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }\n  else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" (if "if") (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar25 == (int *******)0x0" (identifier "pppppppiVar25") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }\n  }" ({ "{") (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" (if "if") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (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 **)(pcStack_348 + -0x5f94))(ppppppiVar21);\n    }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" (else "else") (compound_statement "{\n    if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }\n    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n  }" ({ "{") (if_statement "if (ppppppiVar21 != (int ******)0x0) {\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" (if "if") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *pppppppiVar25 = (int ******)pppppppiVar6;\n      pppppppiVar25[1] = ppppppiVar21;\n      __quote = pppppppiStack_324;\n      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n      pppppppiVar6 = pppppppiVar25;\n      goto LAB_000de028;\n    }" ({ "{") (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" (* "*") (identifier "pppppppiVar25")) (= "=") (cast_expression "(int ******)pppppppiVar6" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar6"))) (; ";")) (expression_statement "pppppppiVar25[1] = ppppppiVar21;" (assignment_expression "pppppppiVar25[1] = ppppppiVar21" (subscript_expression "pppppppiVar25[1]" (identifier "pppppppiVar25") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "ppppppiVar21")) (; ";")) (expression_statement "__quote = pppppppiStack_324;" (assignment_expression "__quote = pppppppiStack_324" (identifier "__quote") (= "=") (identifier "pppppppiStack_324")) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);" (call_expression "(**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f88))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f88)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f88)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f88)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f88)" (( "(") (binary_expression "pcStack_348 + -0x5f88" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f88")) () ")"))))) () ")")) (argument_list "(ppppppiVar21,pppppppiStack_324,unaff_s6)" (( "(") (identifier "ppppppiVar21") (, ",") (identifier "pppppppiStack_324") (, ",") (identifier "unaff_s6") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar22)" (( "(") (identifier "pppppppiVar22") () ")"))) (; ";")) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)((int)pppppppiVar28 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar28 + 1)" (( "(") (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (goto_statement "goto LAB_000de028;" (goto "goto") (statement_identifier "LAB_000de028") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")"))) (; ";")) (} "}")))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiStack_324)" (( "(") (identifier "pppppppiStack_324") () ")"))) (; ";")) (expression_statement "uStack_30c = 1;" (assignment_expression "uStack_30c = 1" (identifier "uStack_30c") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_000de200:\n  (**(code **)(pcStack_348 + -0x6284))(iStack_308);" (statement_identifier "LAB_000de200") (: ":") (expression_statement "(**(code **)(pcStack_348 + -0x6284))(iStack_308);" (call_expression "(**(code **)(pcStack_348 + -0x6284))(iStack_308)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x6284))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x6284)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x6284)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x6284)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x6284)" (( "(") (binary_expression "pcStack_348 + -0x6284" (identifier "pcStack_348") (+ "+") (number_literal "-0x6284")) () ")"))))) () ")")) (argument_list "(iStack_308)" (( "(") (identifier "iStack_308") () ")"))) (; ";"))) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (if_statement "if (uStack_330 == 0x210) {\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }\n  else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(uStack_330 == 0x210)" (( "(") (binary_expression "uStack_330 == 0x210" (identifier "uStack_330") (== "==") (number_literal "0x210")) () ")")) (compound_statement "{\n    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);\n    pppppppiVar7 = (int *******)(iVar3 + 1);\n    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);\n    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);\n    if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }\n  }" ({ "{") (expression_statement "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);" (assignment_expression "iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60fc))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60fc)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60fc)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60fc)" (( "(") (binary_expression "pcStack_348 + -0x60fc" (identifier "pcStack_348") (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(pppppppiStack_304)" (( "(") (identifier "pppppppiStack_304") () ")")))) (; ";")) (expression_statement "pppppppiVar7 = (int *******)(iVar3 + 1);" (assignment_expression "pppppppiVar7 = (int *******)(iVar3 + 1)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(iVar3 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);" (assignment_expression "pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" (identifier "pppppppiVar27") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))))) (; ";")) (expression_statement "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);" (assignment_expression "pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)(**(code **)(pcStack_348 + -0x60a4))(8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_348 + -0x60a4))(8)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x60a4)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x60a4)" (( "(") (binary_expression "pcStack_348 + -0x60a4" (identifier "pcStack_348") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(8)" (( "(") (number_literal "8") () ")"))))) (; ";")) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }\n    else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" (if "if") (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar25 == (int *******)0x0" (identifier "pppppppiVar25") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n      if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }\n    }" ({ "{") (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" (if "if") (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar27 != (int *******)0x0" (identifier "pppppppiVar27") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 **)(pcStack_348 + -0x5f94))(pppppppiVar27);\n        pcVar33 = pcStack_348;\n      }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar27)" (( "(") (identifier "pppppppiVar27") () ")"))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" (else "else") (compound_statement "{\n      if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }\n      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);\n      pppppppiVar25 = pppppppiVar6;\n      pcVar33 = pcStack_348;\n    }" ({ "{") (if_statement "if (pppppppiVar27 != (int *******)0x0) {\n        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" (if "if") (parenthesized_expression "(pppppppiVar27 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar27 != (int *******)0x0" (identifier "pppppppiVar27") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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        pppppppiVar25[1] = (int ******)pppppppiVar27;\n        *pppppppiVar25 = (int ******)pppppppiVar6;\n        if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }\n        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);\n        pcVar33 = pcStack_348;\n        goto LAB_000ddf00;\n      }" ({ "{") (expression_statement "pppppppiVar25[1] = (int ******)pppppppiVar27;" (assignment_expression "pppppppiVar25[1] = (int ******)pppppppiVar27" (subscript_expression "pppppppiVar25[1]" (identifier "pppppppiVar25") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int ******)pppppppiVar27" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar27"))) (; ";")) (expression_statement "*pppppppiVar25 = (int ******)pppppppiVar6;" (assignment_expression "*pppppppiVar25 = (int ******)pppppppiVar6" (pointer_expression "*pppppppiVar25" (* "*") (identifier "pppppppiVar25")) (= "=") (cast_expression "(int ******)pppppppiVar6" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppiVar6"))) (; ";")) (if_statement "if (uStack_33c == 0) {\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }\n        else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" (if "if") (parenthesized_expression "(uStack_33c == 0)" (( "(") (binary_expression "uStack_33c == 0" (identifier "uStack_33c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          __quote = pppppppiStack_304;\n          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);\n        }" ({ "{") (expression_statement "__quote = pppppppiStack_304;" (assignment_expression "__quote = pppppppiStack_304" (identifier "__quote") (= "=") (identifier "pppppppiStack_304")) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);" (call_expression "(**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5fac))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5fac)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5fac)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5fac)" (( "(") (binary_expression "pcStack_348 + -0x5fac" (identifier "pcStack_348") (+ "+") (number_literal "-0x5fac")) () ")"))))) () ")")) (argument_list "(pppppppiVar27,pppppppiStack_304,pppppppiVar7)" (( "(") (identifier "pppppppiVar27") (, ",") (identifier "pppppppiStack_304") (, ",") (identifier "pppppppiVar7") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" (else "else") (compound_statement "{\n          *(undefined1 *)pppppppiVar27 = 0;\n        }" ({ "{") (expression_statement "*(undefined1 *)pppppppiVar27 = 0;" (assignment_expression "*(undefined1 *)pppppppiVar27 = 0" (pointer_expression "*(undefined1 *)pppppppiVar27" (* "*") (cast_expression "(undefined1 *)pppppppiVar27" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppiVar27"))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);" (assignment_expression "pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1)" (identifier "pppppppiVar28") (= "=") (cast_expression "(int *******)((int)pppppppiVar28 + 1)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppiVar28 + 1)" (( "(") (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (goto_statement "goto LAB_000ddf00;" (goto "goto") (statement_identifier "LAB_000ddf00") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar25)" (( "(") (identifier "pppppppiVar25") () ")"))) (; ";")) (expression_statement "pppppppiVar25 = pppppppiVar6;" (assignment_expression "pppppppiVar25 = pppppppiVar6" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" (else "else") (compound_statement "{\nLAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }\n  }" ({ "{") (labeled_statement "LAB_000ddf00:\n    if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" (statement_identifier "LAB_000ddf00") (: ":") (if_statement "if (uStack_30c == 0) {\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" (if "if") (parenthesized_expression "(uStack_30c == 0)" (( "(") (binary_expression "uStack_30c == 0" (identifier "uStack_30c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);\n      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);\n      pcVar33 = pcStack_348;\n      if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }\n    }" ({ "{") (expression_statement "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);" (assignment_expression "pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4)" (identifier "pppppppiVar27") (= "=") (cast_expression "(int *******)(((int)pppppppiVar28 + 1) * 4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(((int)pppppppiVar28 + 1) * 4)" (( "(") (binary_expression "((int)pppppppiVar28 + 1) * 4" (parenthesized_expression "((int)pppppppiVar28 + 1)" (( "(") (binary_expression "(int)pppppppiVar28 + 1" (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28")) (+ "+") (number_literal "1")) () ")")) (* "*") (number_literal "4")) () ")")))) (; ";")) (expression_statement "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);" (assignment_expression "pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27)" (parenthesized_expression "(**(code **)(pcVar33 + -0x60a4))" (( "(") (pointer_expression "**(code **)(pcVar33 + -0x60a4)" (* "*") (pointer_expression "*(code **)(pcVar33 + -0x60a4)" (* "*") (cast_expression "(code **)(pcVar33 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x60a4)" (( "(") (binary_expression "pcVar33 + -0x60a4" (identifier "pcVar33") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(pppppppiVar27)" (( "(") (identifier "pppppppiVar27") () ")"))))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (if_statement "if (pppppppiVar6 != (int *******)0x0) {\n        if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" (if "if") (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar6 != (int *******)0x0" (identifier "pppppppiVar6") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }\n        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;\n        pppppppiVar27[-1] = (int ******)0x0;\n        puVar8 = puVar34;\n        pppppppiVar22 = pppppppiVar25;\n        if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }\n        goto LAB_000de914;\n      }" ({ "{") (if_statement "if (pppppppiVar28 != (int *******)0x0) {\n          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" (if "if") (parenthesized_expression "(pppppppiVar28 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar28 != (int *******)0x0" (identifier "pppppppiVar28") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);\n          pppppppiVar22 = pppppppiVar6;\n          pppppppiVar27 = pppppppiVar25;\n          do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);\n        }" ({ "{") (expression_statement "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);" (assignment_expression "__quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" (identifier "__quote") (= "=") (cast_expression "(int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)(pppppppiVar27 + -1) + (int)pppppppiVar6)" (( "(") (binary_expression "(int)(pppppppiVar27 + -1) + (int)pppppppiVar6" (cast_expression "(int)(pppppppiVar27 + -1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(pppppppiVar27 + -1)" (( "(") (binary_expression "pppppppiVar27 + -1" (identifier "pppppppiVar27") (+ "+") (number_literal "-1")) () ")"))) (+ "+") (cast_expression "(int)pppppppiVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar6"))) () ")")))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar6;" (assignment_expression "pppppppiVar22 = pppppppiVar6" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "pppppppiVar27 = pppppppiVar25;" (assignment_expression "pppppppiVar27 = pppppppiVar25" (identifier "pppppppiVar27") (= "=") (identifier "pppppppiVar25")) (; ";")) (do_statement "do {\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          } while (__quote != pppppppiVar22);" (do "do") (compound_statement "{\n            *pppppppiVar22 = pppppppiVar27[1];\n            pppppppiVar22 = pppppppiVar22 + 1;\n            pppppppiVar27 = (int *******)*pppppppiVar27;\n          }" ({ "{") (expression_statement "*pppppppiVar22 = pppppppiVar27[1];" (assignment_expression "*pppppppiVar22 = pppppppiVar27[1]" (pointer_expression "*pppppppiVar22" (* "*") (identifier "pppppppiVar22")) (= "=") (subscript_expression "pppppppiVar27[1]" (identifier "pppppppiVar27") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar22 + 1;" (assignment_expression "pppppppiVar22 = pppppppiVar22 + 1" (identifier "pppppppiVar22") (= "=") (binary_expression "pppppppiVar22 + 1" (identifier "pppppppiVar22") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar27;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar27" (identifier "pppppppiVar27") (= "=") (cast_expression "(int *******)*pppppppiVar27" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiVar27" (* "*") (identifier "pppppppiVar27")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(__quote != pppppppiVar22)" (( "(") (binary_expression "__quote != pppppppiVar22" (identifier "__quote") (!= "!=") (identifier "pppppppiVar22")) () ")")) (; ";")) (} "}"))) (expression_statement "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;" (assignment_expression "pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1" (identifier "pppppppiVar27") (= "=") (binary_expression "pppppppiVar6 + (int)pppppppiVar28 + 1" (binary_expression "pppppppiVar6 + (int)pppppppiVar28" (identifier "pppppppiVar6") (+ "+") (cast_expression "(int)pppppppiVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppiVar28"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppiVar27[-1] = (int ******)0x0;" (assignment_expression "pppppppiVar27[-1] = (int ******)0x0" (subscript_expression "pppppppiVar27[-1]" (identifier "pppppppiVar27") ([ "[") (number_literal "-1") (] "]")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" (identifier "puVar8") (= "=") (identifier "puVar34")) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar25;" (assignment_expression "pppppppiVar22 = pppppppiVar25" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar25")) (; ";")) (if_statement "if (unaff_s2 != (int *******)0x0) {\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" (if "if") (parenthesized_expression "(unaff_s2 != (int *******)0x0)" (( "(") (binary_expression "unaff_s2 != (int *******)0x0" (identifier "unaff_s2") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }\n        }" ({ "{") (while_statement "while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {\n            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" (while "while") (parenthesized_expression "(pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0)" (( "(") (comma_expression "pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (, ",") (binary_expression "pppppppiVar22 != (int *******)0x0" (identifier "pppppppiVar22") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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            pppppppiVar25 = pppppppiVar22;\n            if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }\n            pppppppiVar27 = (int *******)*pppppppiVar22;\n            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);\n            pppppppiVar22 = pppppppiVar27;\n          }" ({ "{") (expression_statement "pppppppiVar25 = pppppppiVar22;" (assignment_expression "pppppppiVar25 = pppppppiVar22" (identifier "pppppppiVar25") (= "=") (identifier "pppppppiVar22")) (; ";")) (if_statement "if (pppppppiVar22 == unaff_s2) {\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" (if "if") (parenthesized_expression "(pppppppiVar22 == unaff_s2)" (( "(") (binary_expression "pppppppiVar22 == unaff_s2" (identifier "pppppppiVar22") (== "==") (identifier "unaff_s2")) () ")")) (compound_statement "{\n              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);\n              pcVar33 = pcStack_348;\n              break;\n            }" ({ "{") (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(unaff_s2)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "pppppppiVar27 = (int *******)*pppppppiVar22;" (assignment_expression "pppppppiVar27 = (int *******)*pppppppiVar22" (identifier "pppppppiVar27") (= "=") (cast_expression "(int *******)*pppppppiVar22" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiVar22" (* "*") (identifier "pppppppiVar22")))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar22)" (( "(") (identifier "pppppppiVar22") () ")"))) (; ";")) (expression_statement "pppppppiVar22 = pppppppiVar27;" (assignment_expression "pppppppiVar22 = pppppppiVar27" (identifier "pppppppiVar22") (= "=") (identifier "pppppppiVar27")) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_000de914;" (goto "goto") (statement_identifier "LAB_000de914") (; ";")) (} "}"))) (} "}")))) (} "}")))) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "puVar8 = puVar34;" (assignment_expression "puVar8 = puVar34" (identifier "puVar8") (= "=") (identifier "puVar34")) (; ";")) (if_statement "if (pppppppiVar25 == (int *******)0x0) {\n    pppppppiVar6 = (int *******)0x0;\n  }\n  else {\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" (if "if") (parenthesized_expression "(pppppppiVar25 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar25 == (int *******)0x0" (identifier "pppppppiVar25") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    pppppppiVar6 = (int *******)0x0;\n  }" ({ "{") (expression_statement "pppppppiVar6 = (int *******)0x0;" (assignment_expression "pppppppiVar6 = (int *******)0x0" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" (else "else") (compound_statement "{\n    do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);\n  }" ({ "{") (do_statement "do {\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    } while (pppppppiVar6 != (int *******)0x0);" (do "do") (compound_statement "{\n      if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }\n      pcVar33 = pcStack_348;\n    }" ({ "{") (if_statement "if (unaff_s2 == (int *******)0x0) {\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }\n      else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" (if "if") (parenthesized_expression "(unaff_s2 == (int *******)0x0)" (( "(") (binary_expression "unaff_s2 == (int *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar6 = (int *******)*pppppppiVar6;\n      }" ({ "{") (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcVar33 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcVar33 + -0x5f94)" (* "*") (cast_expression "(code **)(pcVar33 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x5f94)" (( "(") (binary_expression "pcVar33 + -0x5f94" (identifier "pcVar33") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar6[1])" (( "(") (subscript_expression "pppppppiVar6[1]" (identifier "pppppppiVar6") ([ "[") (number_literal "1") (] "]")) () ")"))) (; ";")) (expression_statement "pppppppiVar6 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar6 = (int *******)*pppppppiVar6" (identifier "pppppppiVar6") (= "=") (cast_expression "(int *******)*pppppppiVar6" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiVar6" (* "*") (identifier "pppppppiVar6")))) (; ";")) (} "}")) (else_clause "else {\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" (else "else") (compound_statement "{\n        if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }\n        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);\n        pppppppiVar25 = (int *******)*pppppppiVar6;\n        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);\n        pppppppiVar6 = pppppppiVar25;\n      }" ({ "{") (if_statement "if (pppppppiVar6 == unaff_s2) {\n          unaff_s2 = (int *******)0x0;\n        }" (if "if") (parenthesized_expression "(pppppppiVar6 == unaff_s2)" (( "(") (binary_expression "pppppppiVar6 == unaff_s2" (identifier "pppppppiVar6") (== "==") (identifier "unaff_s2")) () ")")) (compound_statement "{\n          unaff_s2 = (int *******)0x0;\n        }" ({ "{") (expression_statement "unaff_s2 = (int *******)0x0;" (assignment_expression "unaff_s2 = (int *******)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);" (call_expression "(**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1])" (parenthesized_expression "(**(code **)(pcVar33 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcVar33 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcVar33 + -0x5f94)" (* "*") (cast_expression "(code **)(pcVar33 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x5f94)" (( "(") (binary_expression "pcVar33 + -0x5f94" (identifier "pcVar33") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar6[1])" (( "(") (subscript_expression "pppppppiVar6[1]" (identifier "pppppppiVar6") ([ "[") (number_literal "1") (] "]")) () ")"))) (; ";")) (expression_statement "pppppppiVar25 = (int *******)*pppppppiVar6;" (assignment_expression "pppppppiVar25 = (int *******)*pppppppiVar6" (identifier "pppppppiVar25") (= "=") (cast_expression "(int *******)*pppppppiVar6" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*pppppppiVar6" (* "*") (identifier "pppppppiVar6")))) (; ";")) (expression_statement "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);" (call_expression "(**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6)" (parenthesized_expression "(**(code **)(pcStack_348 + -0x5f94))" (( "(") (pointer_expression "**(code **)(pcStack_348 + -0x5f94)" (* "*") (pointer_expression "*(code **)(pcStack_348 + -0x5f94)" (* "*") (cast_expression "(code **)(pcStack_348 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_348 + -0x5f94)" (( "(") (binary_expression "pcStack_348 + -0x5f94" (identifier "pcStack_348") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar6)" (( "(") (identifier "pppppppiVar6") () ")"))) (; ";")) (expression_statement "pppppppiVar6 = pppppppiVar25;" (assignment_expression "pppppppiVar6 = pppppppiVar25" (identifier "pppppppiVar6") (= "=") (identifier "pppppppiVar25")) (; ";")) (} "}")))) (expression_statement "pcVar33 = pcStack_348;" (assignment_expression "pcVar33 = pcStack_348" (identifier "pcVar33") (= "=") (identifier "pcStack_348")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppiVar6 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar6 != (int *******)0x0" (identifier "pppppppiVar6") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000de914:\n  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" (statement_identifier "LAB_000de914") (: ":") (if_statement "if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {\n    return pppppppiVar6;\n  }" (if "if") (parenthesized_expression "(pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4))" (( "(") (binary_expression "pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)" (identifier "pcStack_25c") (== "==") (cast_expression "(char *)**(undefined4 **)(pcVar33 + -0x5fb4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(pcVar33 + -0x5fb4)" (* "*") (pointer_expression "*(undefined4 **)(pcVar33 + -0x5fb4)" (* "*") (cast_expression "(undefined4 **)(pcVar33 + -0x5fb4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x5fb4)" (( "(") (binary_expression "pcVar33 + -0x5fb4" (identifier "pcVar33") (+ "+") (number_literal "-0x5fb4")) () ")"))))))) () ")")) (compound_statement "{\n    return pppppppiVar6;\n  }" ({ "{") (return_statement "return pppppppiVar6;" (return "return") (identifier "pppppppiVar6") (; ";")) (} "}")))) (expression_statement "pcVar33 = *(code **)(pcVar33 + -0x6004);" (assignment_expression "pcVar33 = *(code **)(pcVar33 + -0x6004)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(pcVar33 + -0x6004)" (* "*") (cast_expression "(code **)(pcVar33 + -0x6004)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + -0x6004)" (( "(") (binary_expression "pcVar33 + -0x6004" (identifier "pcVar33") (+ "+") (number_literal "-0x6004")) () ")"))))) (; ";")) (expression_statement "pcVar35 = glob_filename;" (assignment_expression "pcVar35 = glob_filename" (identifier "pcVar35") (= "=") (identifier "glob_filename")) (; ";")) (expression_statement "pcVar29 = pcStack_25c;" (assignment_expression "pcVar29 = pcStack_25c" (identifier "pcVar29") (= "=") (identifier "pcStack_25c")) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(code **)(puVar8 + -4) = pcVar35;" (assignment_expression "*(code **)(puVar8 + -4) = pcVar35" (pointer_expression "*(code **)(puVar8 + -4)" (* "*") (cast_expression "(code **)(puVar8 + -4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -4)" (( "(") (binary_expression "puVar8 + -4" (identifier "puVar8") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pcVar35")) (; ";")) (expression_statement "*(undefined1 **)(puVar8 + -8) = auStack_358;" (assignment_expression "*(undefined1 **)(puVar8 + -8) = auStack_358" (pointer_expression "*(undefined1 **)(puVar8 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar8 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -8)" (( "(") (binary_expression "puVar8 + -8" (identifier "puVar8") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "auStack_358")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0xc) = pppppppiVar4;" (assignment_expression "*(int ********)(puVar8 + -0xc) = pppppppiVar4" (pointer_expression "*(int ********)(puVar8 + -0xc)" (* "*") (cast_expression "(int ********)(puVar8 + -0xc)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0xc)" (( "(") (binary_expression "puVar8 + -0xc" (identifier "puVar8") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pppppppiVar4")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x10) = unaff_s6;" (assignment_expression "*(int ********)(puVar8 + -0x10) = unaff_s6" (pointer_expression "*(int ********)(puVar8 + -0x10)" (* "*") (cast_expression "(int ********)(puVar8 + -0x10)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x10)" (( "(") (binary_expression "puVar8 + -0x10" (identifier "puVar8") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x14) = pppppppiVar28;" (assignment_expression "*(int ********)(puVar8 + -0x14) = pppppppiVar28" (pointer_expression "*(int ********)(puVar8 + -0x14)" (* "*") (cast_expression "(int ********)(puVar8 + -0x14)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x14)" (( "(") (binary_expression "puVar8 + -0x14" (identifier "puVar8") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "pppppppiVar28")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x18) = pppppppiVar7;" (assignment_expression "*(int ********)(puVar8 + -0x18) = pppppppiVar7" (pointer_expression "*(int ********)(puVar8 + -0x18)" (* "*") (cast_expression "(int ********)(puVar8 + -0x18)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x18)" (( "(") (binary_expression "puVar8 + -0x18" (identifier "puVar8") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pppppppiVar7")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x1c) = pppppppiVar27;" (assignment_expression "*(int ********)(puVar8 + -0x1c) = pppppppiVar27" (pointer_expression "*(int ********)(puVar8 + -0x1c)" (* "*") (cast_expression "(int ********)(puVar8 + -0x1c)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x1c)" (( "(") (binary_expression "puVar8 + -0x1c" (identifier "puVar8") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "pppppppiVar27")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x20) = unaff_s2;" (assignment_expression "*(int ********)(puVar8 + -0x20) = unaff_s2" (pointer_expression "*(int ********)(puVar8 + -0x20)" (* "*") (cast_expression "(int ********)(puVar8 + -0x20)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x20)" (( "(") (binary_expression "puVar8 + -0x20" (identifier "puVar8") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x24) = pppppppiVar6;" (assignment_expression "*(int ********)(puVar8 + -0x24) = pppppppiVar6" (pointer_expression "*(int ********)(puVar8 + -0x24)" (* "*") (cast_expression "(int ********)(puVar8 + -0x24)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x24)" (( "(") (binary_expression "puVar8 + -0x24" (identifier "puVar8") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "pppppppiVar6")) (; ";")) (expression_statement "*(int ********)(puVar8 + -0x28) = pppppppiVar25;" (assignment_expression "*(int ********)(puVar8 + -0x28) = pppppppiVar25" (pointer_expression "*(int ********)(puVar8 + -0x28)" (* "*") (cast_expression "(int ********)(puVar8 + -0x28)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x28)" (( "(") (binary_expression "puVar8 + -0x28" (identifier "puVar8") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "pppppppiVar25")) (; ";")) (expression_statement "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;" (assignment_expression "*(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c" (pointer_expression "*(code **)(puVar8 + -0x50)" (* "*") (cast_expression "(code **)(puVar8 + -0x50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (= "=") (binary_expression "pcVar33 + 0x7fb4c" (identifier "pcVar33") (+ "+") (number_literal "0x7fb4c"))) (; ";")) (expression_statement "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(**(code **)(pcVar33 + 0x79aa8))(4)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar33 + 0x79aa8))(4)" (parenthesized_expression "(**(code **)(pcVar33 + 0x79aa8))" (( "(") (pointer_expression "**(code **)(pcVar33 + 0x79aa8)" (* "*") (pointer_expression "*(code **)(pcVar33 + 0x79aa8)" (* "*") (cast_expression "(code **)(pcVar33 + 0x79aa8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar33 + 0x79aa8)" (( "(") (binary_expression "pcVar33 + 0x79aa8" (identifier "pcVar33") (+ "+") (number_literal "0x79aa8")) () ")"))))) () ")")) (argument_list "(4)" (( "(") (number_literal "4") () ")"))))) (; ";")) (expression_statement "iVar3 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x50)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n    return (int *******)0x0;\n  }" (if "if") (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 == (int *******)0x0" (identifier "pppppppiVar7") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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    return (int *******)0x0;\n  }" ({ "{") (return_statement "return (int *******)0x0;" (return "return") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "*pppppppiVar7 = (int ******)0x0;" (assignment_expression "*pppppppiVar7 = (int ******)0x0" (pointer_expression "*pppppppiVar7" (* "*") (identifier "pppppppiVar7")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);" (assignment_expression "iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f)" (parenthesized_expression "(**(code **)(iVar3 + -0x61d4))" (( "(") (pointer_expression "**(code **)(iVar3 + -0x61d4)" (* "*") (pointer_expression "*(code **)(iVar3 + -0x61d4)" (* "*") (cast_expression "(code **)(iVar3 + -0x61d4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar3 + -0x61d4)" (( "(") (binary_expression "iVar3 + -0x61d4" (identifier "iVar3") (+ "+") (number_literal "-0x61d4")) () ")"))))) () ")")) (argument_list "(pcVar29,0x2f)" (( "(") (identifier "pcVar29") (, ",") (number_literal "0x2f") () ")")))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (iVar3 == 0) {\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }\n  else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000deb88:\n    iVar3 = 0;\n    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\nLAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }\n    (**(code **)(iVar23 + -0x5f94))();\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe | 0x100;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\nLAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }\n    if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }\n  }" ({ "{") (labeled_statement "LAB_000deb88:\n    iVar3 = 0;" (statement_identifier "LAB_000deb88") (: ":") (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" (identifier "iVar3") (= "=") (number_literal "0")) (; ";"))) (expression_statement "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (identifier "ppppppiVar21") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x47a0")) () ")")))) (; ";")) (labeled_statement "LAB_000deb94:\n    if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" (statement_identifier "LAB_000deb94") (: ":") (if_statement "if (*pcVar29 == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" (if "if") (parenthesized_expression "(*pcVar29 == '\0')" (( "(") (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }\n      uVar5 = 0;\nLAB_000df634:\n      iVar24 = uVar5 + 1;\nLAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *pppppppiVar7 = ppppppiVar16;\n      if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }\nLAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\nLAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }\n      (*pcVar33)();\n      return (int *******)0x0;\n    }" ({ "{") (expression_statement "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x6098)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x6098)" (* "*") (cast_expression "(code **)(iVar23 + -0x6098)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x6098)" (( "(") (binary_expression "iVar23 + -0x6098" (identifier "iVar23") (+ "+") (number_literal "-0x6098")) () ")"))))) () ")")) (argument_list "(pppppppiVar7,8)" (( "(") (identifier "pppppppiVar7") (, ",") (number_literal "8") () ")"))))) (; ";")) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (pppppppiVar7 == (int *******)0x0) {\n        if (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" (if "if") (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 == (int *******)0x0" (identifier "pppppppiVar7") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 (iVar3 == 0) {\n          return (int *******)0x0;\n        }\nLAB_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);\n        return (int *******)0x0;\n      }" ({ "{") (if_statement "if (iVar3 == 0) {\n          return (int *******)0x0;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          return (int *******)0x0;\n        }" ({ "{") (return_statement "return (int *******)0x0;" (return "return") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000df3a4:\n        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" (statement_identifier "LAB_000df3a4") (: ":") (expression_statement "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar17 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar17 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar17 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar17 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar17 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar17 + -0x5f94)" (( "(") (binary_expression "iVar17 + -0x5f94" (identifier "iVar17") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";"))) (return_statement "return (int *******)0x0;" (return "return") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "uVar5 = 0;" (assignment_expression "uVar5 = 0" (identifier "uVar5") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000df634:\n      iVar24 = uVar5 + 1;" (statement_identifier "LAB_000df634") (: ":") (expression_statement "iVar24 = uVar5 + 1;" (assignment_expression "iVar24 = uVar5 + 1" (identifier "iVar24") (= "=") (binary_expression "uVar5 + 1" (identifier "uVar5") (+ "+") (number_literal "1"))) (; ";"))) (labeled_statement "LAB_000df638:\n      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" (statement_identifier "LAB_000df638") (: ":") (expression_statement "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);" (assignment_expression "ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(**(code **)(iVar17 + -0x60a4))(iVar24)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "(**(code **)(iVar17 + -0x60a4))(iVar24)" (parenthesized_expression "(**(code **)(iVar17 + -0x60a4))" (( "(") (pointer_expression "**(code **)(iVar17 + -0x60a4)" (* "*") (pointer_expression "*(code **)(iVar17 + -0x60a4)" (* "*") (cast_expression "(code **)(iVar17 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar17 + -0x60a4)" (( "(") (binary_expression "iVar17 + -0x60a4" (identifier "iVar17") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iVar24)" (( "(") (identifier "iVar24") () ")"))))) (; ";"))) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "*pppppppiVar7 = ppppppiVar16;" (assignment_expression "*pppppppiVar7 = ppppppiVar16" (pointer_expression "*pppppppiVar7" (* "*") (identifier "pppppppiVar7")) (= "=") (identifier "ppppppiVar16")) (; ";")) (if_statement "if (ppppppiVar16 != (int ******)0x0) {\n        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" (if "if") (parenthesized_expression "(ppppppiVar16 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar16 != (int ******)0x0" (identifier "ppppppiVar16") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (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 **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);\n        if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        pppppppiVar7[1] = (int ******)0x0;\n        return pppppppiVar7;\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);" (call_expression "(**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24)" (parenthesized_expression "(**(code **)(iVar23 + -0x5fac))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5fac)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5fac)" (* "*") (cast_expression "(code **)(iVar23 + -0x5fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5fac)" (( "(") (binary_expression "iVar23 + -0x5fac" (identifier "iVar23") (+ "+") (number_literal "-0x5fac")) () ")"))))) () ")")) (argument_list "(ppppppiVar16,ppppppiVar21,iVar24)" (( "(") (identifier "ppppppiVar16") (, ",") (identifier "ppppppiVar21") (, ",") (identifier "iVar24") () ")"))) (; ";")) (if_statement "if (iVar3 == 0) {\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          pppppppiVar7[1] = (int ******)0x0;\n          return pppppppiVar7;\n        }" ({ "{") (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" (identifier "pppppppiVar7") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}"))) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "pppppppiVar7[1] = (int ******)0x0;" (assignment_expression "pppppppiVar7[1] = (int ******)0x0" (subscript_expression "pppppppiVar7[1]" (identifier "pppppppiVar7") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}"))) (labeled_statement "LAB_000df2ac:\n      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (statement_identifier "LAB_000df2ac") (: ":") (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))) (; ";"))) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" (if "if") (parenthesized_expression "((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0))" (( "(") (binary_expression "(iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)" (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 == (int ******)0x0" (identifier "ppppppiVar21") (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" ({ "{") (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" (else "else") (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";")) (} "}")))) (labeled_statement "LAB_000df2c8:\n      if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" (statement_identifier "LAB_000df2c8") (: ":") (if_statement "if (*piVar15 == 0) {\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" (if "if") (parenthesized_expression "(*piVar15 == 0)" (( "(") (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" ({ "{") (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cf8)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf8)" (( "(") (binary_expression "iVar23 + -0x7cf8" (identifier "iVar23") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" (else "else") (compound_statement "{\n        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n        iVar23 = *(int *)(puVar8 + -0x50);\n        piVar15 = *(int **)(iVar23 + -0x7cf8);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x7ce8)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x7ce8)" (* "*") (cast_expression "(code **)(iVar23 + -0x7ce8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7ce8)" (( "(") (binary_expression "iVar23 + -0x7ce8" (identifier "iVar23") (+ "+") (number_literal "-0x7ce8")) () ")"))))) () ")")) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" (( "(") (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" (* "*") (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cf8)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf8)" (( "(") (binary_expression "iVar23 + -0x7cf8" (identifier "iVar23") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (} "}"))))) (if_statement "if (*piVar15 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }\n      else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" (if "if") (parenthesized_expression "(*piVar15 == 0)" (( "(") (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x7d20);\n      }" ({ "{") (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x7d20)" (* "*") (cast_expression "(code **)(iVar23 + -0x7d20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7d20)" (( "(") (binary_expression "iVar23 + -0x7d20" (identifier "iVar23") (+ "+") (number_literal "-0x7d20")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" (else "else") (compound_statement "{\n        (**(code **)(iVar23 + -0x7cf4))();\n        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x7cf4)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x7cf4)" (* "*") (cast_expression "(code **)(iVar23 + -0x7cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf4)" (( "(") (binary_expression "iVar23 + -0x7cf4" (identifier "iVar23") (+ "+") (number_literal "-0x7cf4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x7d20")) () ")"))))) (; ";")) (} "}")))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return (int *******)0x0;" (return "return") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 **)(iVar23 + -0x5f94))();" (call_expression "(**(code **)(iVar23 + -0x5f94))()" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe | 0x100;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe | 0x100" (identifier "uVar30") (= "=") (binary_expression "(uint)__quote & 0xfffffffe | 0x100" (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0xfffffffe")) (| "|") (number_literal "0x100"))) (; ";")) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" (identifier "uVar14") (= "=") (identifier "uVar30")) (; ";")) (if_statement "if (((uint)__quote & 0x400) == 0) {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }\n    else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" (if "if") (parenthesized_expression "(((uint)__quote & 0x400) == 0)" (( "(") (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" (( "(") (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x400")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" ({ "{") (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x5e18")) () ")")))) (; ";")) (} "}")) (else_clause "else if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" (else "else") (if_statement "if (*pcVar29 == '*') {\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }\n    else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" (if "if") (parenthesized_expression "(*pcVar29 == '*')" (( "(") (binary_expression "*pcVar29 == '*'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n      uVar5 = 0;\nLAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;\n      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n    }" ({ "{") (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" (identifier "uVar5") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000df42c:\n      ppppppiVar16 = ppppppiVar21;" (statement_identifier "LAB_000df42c") (: ":") (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar21")) (; ";"))) (if_statement "if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }\n      else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" (if "if") (parenthesized_expression "((pcVar29[1] == '*') && (pcVar29[2] == '\0'))" (( "(") (binary_expression "(pcVar29[1] == '*') && (pcVar29[2] == '\0')" (parenthesized_expression "(pcVar29[1] == '*')" (( "(") (binary_expression "pcVar29[1] == '*'" (subscript_expression "pcVar29[1]" (identifier "pcVar29") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(pcVar29[2] == '\0')" (( "(") (binary_expression "pcVar29[2] == '\0'" (subscript_expression "pcVar29[2]" (identifier "pcVar29") ([ "[") (number_literal "2") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n        uVar14 = uVar30 | 0x210;\n        if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" ({ "{") (expression_statement "uVar14 = uVar30 | 0x210;" (assignment_expression "uVar14 = uVar30 | 0x210" (identifier "uVar14") (= "=") (binary_expression "uVar30 | 0x210" (identifier "uVar30") (| "|") (number_literal "0x210"))) (; ";")) (if_statement "if (uVar5 == 0) {\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" (if "if") (parenthesized_expression "(uVar5 == 0)" (( "(") (binary_expression "uVar5 == 0" (identifier "uVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" ({ "{") (if_statement "if (((uint)__quote & 0x10) == 0) {\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" (if "if") (parenthesized_expression "(((uint)__quote & 0x10) == 0)" (( "(") (binary_expression "((uint)__quote & 0x10) == 0" (parenthesized_expression "((uint)__quote & 0x10)" (( "(") (binary_expression "(uint)__quote & 0x10" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar14 = uVar30 & 0xfffffdff | 0x10;\n          }" ({ "{") (expression_statement "uVar14 = uVar30 & 0xfffffdff | 0x10;" (assignment_expression "uVar14 = uVar30 & 0xfffffdff | 0x10" (identifier "uVar14") (= "=") (binary_expression "uVar30 & 0xfffffdff | 0x10" (binary_expression "uVar30 & 0xfffffdff" (identifier "uVar30") (& "&") (number_literal "0xfffffdff")) (| "|") (number_literal "0x10"))) (; ";")) (} "}"))) (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x5e18")) () ")")))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" (else "else") (compound_statement "{\n        uVar14 = uVar30;\n        if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }\n      }" ({ "{") (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" (identifier "uVar14") (= "=") (identifier "uVar30")) (; ";")) (if_statement "if (uVar5 == 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" (if "if") (parenthesized_expression "(uVar5 == 0)" (( "(") (binary_expression "uVar5 == 0" (identifier "uVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n        }" ({ "{") (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x5e18")) () ")")))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" (else "else") (compound_statement "{\n      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);\n    }" ({ "{") (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x5e18)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x5e18" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x5e18")) () ")")))) (; ";")) (} "}")))))) (labeled_statement "LAB_000debcc:\n    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" (statement_identifier "LAB_000debcc") (: ":") (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)glob_vector(pcVar29,ppppppiVar16,uVar14)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "glob_vector(pcVar29,ppppppiVar16,uVar14)" (identifier "glob_vector") (argument_list "(pcVar29,ppppppiVar16,uVar14)" (( "(") (identifier "pcVar29") (, ",") (identifier "ppppppiVar16") (, ",") (identifier "uVar14") () ")"))))) (; ";"))) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" (if "if") (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 != (int *******)0x0" (identifier "pppppppiVar7") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 "{\nLAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }\n    }" ({ "{") (labeled_statement "LAB_000debec:\n      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" (statement_identifier "LAB_000debec") (: ":") (if_statement "if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" (if "if") (parenthesized_expression "(pppppppiVar7 != *(int ********)(iVar23 + -0x7174))" (( "(") (binary_expression "pppppppiVar7 != *(int ********)(iVar23 + -0x7174)" (identifier "pppppppiVar7") (!= "!=") (pointer_expression "*(int ********)(iVar23 + -0x7174)" (* "*") (cast_expression "(int ********)(iVar23 + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 + -0x7174)" (( "(") (binary_expression "iVar23 + -0x7174" (identifier "iVar23") (+ "+") (number_literal "-0x7174")) () ")"))))) () ")")) (compound_statement "{\n        ppppppiVar16 = ppppppiVar21;\n        if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }\n        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);\n        if (iVar3 == 0) {\n          return pppppppiVar7;\n        }\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n        return pppppppiVar7;\n      }" ({ "{") (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar21")) (; ";")) (if_statement "if ((uVar14 & 0x10) != 0) {\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" (if "if") (parenthesized_expression "((uVar14 & 0x10) != 0)" (( "(") (binary_expression "(uVar14 & 0x10) != 0" (parenthesized_expression "(uVar14 & 0x10)" (( "(") (binary_expression "uVar14 & 0x10" (identifier "uVar14") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);\n        }" ({ "{") (expression_statement "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);" (assignment_expression "ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (identifier "ppppppiVar16") (= "=") (cast_expression "(int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(iVar23 + -0x7f90) + -0x47a0)" (( "(") (binary_expression "*(int *)(iVar23 + -0x7f90) + -0x47a0" (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "-0x47a0")) () ")")))) (; ";")) (} "}"))) (expression_statement "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);" (assignment_expression "pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote)" (identifier "FUN_000dd6dc") (argument_list "(ppppppiVar16,pppppppiVar7,__quote)" (( "(") (identifier "ppppppiVar16") (, ",") (identifier "pppppppiVar7") (, ",") (identifier "__quote") () ")"))))) (; ";")) (if_statement "if (iVar3 == 0) {\n          return pppppppiVar7;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          return pppppppiVar7;\n        }" ({ "{") (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}"))) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}")))) (} "}"))) (if_statement "if (iVar3 == 0) {\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      piVar15 = *(int **)(iVar23 + -0x7cfc);\n      goto LAB_000df4b0;\n    }" ({ "{") (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";")) (goto_statement "goto LAB_000df4b0;" (goto "goto") (statement_identifier "LAB_000df4b0") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" (else "else") (compound_statement "{\n    if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }\n    iVar24 = iVar3 - (int)pcVar29;\n    uVar5 = iVar24 + 1;\n    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);\n    if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    *(char *)((int)ppppppiVar21 + uVar5) = '\0';\n    pcVar26 = (char *)(iVar3 + 1);\n    if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }\n    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);\n    if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }\n    if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }\n    FUN_000ddacc(ppppppiVar21);\n    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    uVar30 = (uint)__quote & 0xfffffffe;\n    uVar14 = uVar30;\n    if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }\n    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);\n    iVar23 = *(int *)(puVar8 + -0x50);\n    if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }\n  }" ({ "{") (if_statement "if (**(int **)(iVar23 + -0x7bf8) != 0) {\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" (if "if") (parenthesized_expression "(**(int **)(iVar23 + -0x7bf8) != 0)" (( "(") (binary_expression "**(int **)(iVar23 + -0x7bf8) != 0" (pointer_expression "**(int **)(iVar23 + -0x7bf8)" (* "*") (pointer_expression "*(int **)(iVar23 + -0x7bf8)" (* "*") (cast_expression "(int **)(iVar23 + -0x7bf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7bf8)" (( "(") (binary_expression "iVar23 + -0x7bf8" (identifier "iVar23") (+ "+") (number_literal "-0x7bf8")) () ")"))))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar3 = glob_dirscan(pcVar29,0x2f);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar3 == 0) goto LAB_000deb88;\n    }" ({ "{") (expression_statement "iVar3 = glob_dirscan(pcVar29,0x2f);" (assignment_expression "iVar3 = glob_dirscan(pcVar29,0x2f)" (identifier "iVar3") (= "=") (call_expression "glob_dirscan(pcVar29,0x2f)" (identifier "glob_dirscan") (argument_list "(pcVar29,0x2f)" (( "(") (identifier "pcVar29") (, ",") (number_literal "0x2f") () ")")))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (iVar3 == 0) goto LAB_000deb88;" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000deb88;" (goto "goto") (statement_identifier "LAB_000deb88") (; ";"))) (} "}"))) (expression_statement "iVar24 = iVar3 - (int)pcVar29;" (assignment_expression "iVar24 = iVar3 - (int)pcVar29" (identifier "iVar24") (= "=") (binary_expression "iVar3 - (int)pcVar29" (identifier "iVar3") (- "-") (cast_expression "(int)pcVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar29")))) (; ";")) (expression_statement "uVar5 = iVar24 + 1;" (assignment_expression "uVar5 = iVar24 + 1" (identifier "uVar5") (= "=") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);" (assignment_expression "ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" (identifier "ppppppiVar21") (= "=") (cast_expression "(int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "(**(code **)(iVar23 + -0x60a4))(iVar24 + 2)" (parenthesized_expression "(**(code **)(iVar23 + -0x60a4))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x60a4)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x60a4)" (* "*") (cast_expression "(code **)(iVar23 + -0x60a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x60a4)" (( "(") (binary_expression "iVar23 + -0x60a4" (identifier "iVar23") (+ "+") (number_literal "-0x60a4")) () ")"))))) () ")")) (argument_list "(iVar24 + 2)" (( "(") (binary_expression "iVar24 + 2" (identifier "iVar24") (+ "+") (number_literal "2")) () ")"))))) (; ";")) (if_statement "if (ppppppiVar21 == (int ******)0x0) {\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" (if "if") (parenthesized_expression "(ppppppiVar21 == (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 == (int ******)0x0" (identifier "ppppppiVar21") (== "==") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (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 **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n      return (int *******)0x0;\n    }" ({ "{") (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))) (; ";")) (return_statement "return (int *******)0x0;" (return "return") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5fac)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5fac" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5fac")) () ")"))))) () ")")) (argument_list "(ppppppiVar21,pcVar29,uVar5)" (( "(") (identifier "ppppppiVar21") (, ",") (identifier "pcVar29") (, ",") (identifier "uVar5") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "*(char *)((int)ppppppiVar21 + uVar5) = '\0';" (assignment_expression "*(char *)((int)ppppppiVar21 + uVar5) = '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + uVar5)" (* "*") (cast_expression "(char *)((int)ppppppiVar21 + uVar5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar21 + uVar5)" (( "(") (binary_expression "(int)ppppppiVar21 + uVar5" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (+ "+") (identifier "uVar5")) () ")")))) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar26 = (char *)(iVar3 + 1);" (assignment_expression "pcVar26 = (char *)(iVar3 + 1)" (identifier "pcVar26") (= "=") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (uVar5 == 0) {\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" (if "if") (parenthesized_expression "(uVar5 == 0)" (( "(") (binary_expression "uVar5 == 0" (identifier "uVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar3 = 1;\n      pcVar29 = pcVar26;\n      goto LAB_000deb94;\n    }" ({ "{") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" (identifier "pcVar29") (= "=") (identifier "pcVar26")) (; ";")) (goto_statement "goto LAB_000deb94;" (goto "goto") (statement_identifier "LAB_000deb94") (; ";")) (} "}"))) (expression_statement "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);" (assignment_expression "iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" (identifier "iVar23") (= "=") (call_expression "glob_pattern_p((char *)ppppppiVar21,(int)pcVar29)" (identifier "glob_pattern_p") (argument_list "((char *)ppppppiVar21,(int)pcVar29)" (( "(") (cast_expression "(char *)ppppppiVar21" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar21")) (, ",") (cast_expression "(int)pcVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar29")) () ")")))) (; ";")) (if_statement "if (iVar23 == 1) {\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" (if "if") (parenthesized_expression "(iVar23 == 1)" (( "(") (binary_expression "iVar23 == 1" (identifier "iVar23") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n      uVar14 = (uint)__quote & 0xfffffffe;\n      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;\n      ppppppiVar16 = ppppppiVar21;\n      if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }\nLAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));\n      if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }\n      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);\n      *(int *)(puVar8 + -0x30) = iVar24;\n      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }\n      if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }\n      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);\n      if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }\n      puVar31 = *(undefined4 **)(puVar8 + -0x30);\n      if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }\n      iVar24 = *(int *)(iVar23 + -0x7f90);\nLAB_000def94:\n      iVar17 = 1;\n      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;\n      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);\n      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;\nLAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;\n      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }\n      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      if (piVar15 == (int *)0x0) goto LAB_000df26c;\n      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;\n      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;\n      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }\n      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);\n      iVar23 = *(int *)(puVar8 + -0x50);\n      *(int *)(puVar8 + -0x48) = iVar24;\n      if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }\n      iVar24 = *piVar11;\n      if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }\n      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;\n      if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }\n      pppppppiVar7 = *(int ********)(puVar8 + -0x48);\n      if (iVar24 == 0) goto LAB_000df004;\n      piVar15 = *(int **)(puVar8 + -0x30);\n      goto LAB_000df34c;\n    }" ({ "{") (expression_statement "uVar14 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar14 = (uint)__quote & 0xfffffffe" (identifier "uVar14") (= "=") (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0xfffffffe"))) (; ";")) (expression_statement "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;" (assignment_expression "*(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400" (pointer_expression "*(uint *)(puVar8 + -0x44)" (* "*") (cast_expression "(uint *)(puVar8 + -0x44)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x44)" (( "(") (binary_expression "puVar8 + -0x44" (identifier "puVar8") (+ "+") (number_literal "-0x44")) () ")")))) (= "=") (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x400"))) (; ";")) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar21")) (; ";")) (if_statement "if (((uint)__quote & 0x400) == 0) {\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }\n      else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" (if "if") (parenthesized_expression "(((uint)__quote & 0x400) == 0)" (( "(") (binary_expression "((uint)__quote & 0x400) == 0" (parenthesized_expression "((uint)__quote & 0x400)" (( "(") (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x400")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44)" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar8 + -0x44)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x44)" (( "(") (binary_expression "puVar8 + -0x44" (identifier "puVar8") (+ "+") (number_literal "-0x44")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" (else "else") (compound_statement "{\n        if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }\n        uVar20 = uVar5;\n        uVar30 = uVar5;\n        if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }\n        bVar1 = uVar30 != uVar5;\n        uVar5 = uVar20;\n        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }\n      }" ({ "{") (if_statement "if (*(char *)ppppppiVar21 == '*') {\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }\n        else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" (if "if") (parenthesized_expression "(*(char *)ppppppiVar21 == '*')" (( "(") (binary_expression "*(char *)ppppppiVar21 == '*'" (pointer_expression "*(char *)ppppppiVar21" (* "*") (cast_expression "(char *)ppppppiVar21" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar21"))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n          if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }\n        }" ({ "{") (if_statement "if (*(char *)((int)ppppppiVar21 + 1) == '*') {\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }\n          else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" (if "if") (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 1) == '*')" (( "(") (binary_expression "*(char *)((int)ppppppiVar21 + 1) == '*'" (pointer_expression "*(char *)((int)ppppppiVar21 + 1)" (* "*") (cast_expression "(char *)((int)ppppppiVar21 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar21 + 1)" (( "(") (binary_expression "(int)ppppppiVar21 + 1" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (+ "+") (number_literal "1")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n            ppppppiVar10 = ppppppiVar21;\n            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }\n          }" ({ "{") (expression_statement "ppppppiVar10 = ppppppiVar21;" (assignment_expression "ppppppiVar10 = ppppppiVar21" (identifier "ppppppiVar10") (= "=") (identifier "ppppppiVar21")) (; ";")) (if_statement "if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }\n            else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" (if "if") (parenthesized_expression "((*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0'))" (( "(") (binary_expression "(*(char *)((int)ppppppiVar21 + 2) == '/') ||\n               (*(char *)((int)ppppppiVar21 + 2) == '\0')" (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '/')" (( "(") (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" (* "*") (cast_expression "(char *)((int)ppppppiVar21 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar21 + 2)" (( "(") (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)ppppppiVar21 + 2) == '\0')" (( "(") (binary_expression "*(char *)((int)ppppppiVar21 + 2) == '\0'" (pointer_expression "*(char *)((int)ppppppiVar21 + 2)" (* "*") (cast_expression "(char *)((int)ppppppiVar21 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar21 + 2)" (( "(") (binary_expression "(int)ppppppiVar21 + 2" (cast_expression "(int)ppppppiVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar21")) (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n              do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');\n              cVar2 = *(char *)ppppppiVar10;\nLAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;\n              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);\n              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);\n              uVar14 = uVar14 | 0x210;\n              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;\n            }" ({ "{") (do_statement "do {\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              } while (*(char *)ppppppiVar10 == '*');" (do "do") (compound_statement "{\n                ppppppiVar19 = ppppppiVar10;\n                ppppppiVar10 = ppppppiVar19;\n                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;\n                if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }\n                ppppppiVar16 = ppppppiVar19;\n              }" ({ "{") (expression_statement "ppppppiVar19 = ppppppiVar10;" (assignment_expression "ppppppiVar19 = ppppppiVar10" (identifier "ppppppiVar19") (= "=") (identifier "ppppppiVar10")) (; ";")) (expression_statement "ppppppiVar10 = ppppppiVar19;" (assignment_expression "ppppppiVar10 = ppppppiVar19" (identifier "ppppppiVar10") (= "=") (identifier "ppppppiVar19")) (; ";")) (if_statement "if (*(char *)((int)ppppppiVar19 + 1) != '*') break;" (if "if") (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 1) != '*')" (( "(") (binary_expression "*(char *)((int)ppppppiVar19 + 1) != '*'" (pointer_expression "*(char *)((int)ppppppiVar19 + 1)" (* "*") (cast_expression "(char *)((int)ppppppiVar19 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar19 + 1)" (( "(") (binary_expression "(int)ppppppiVar19 + 1" (cast_expression "(int)ppppppiVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar19")) (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (*(char *)((int)ppppppiVar19 + 2) == '/') {\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }\n                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" (if "if") (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) == '/')" (( "(") (binary_expression "*(char *)((int)ppppppiVar19 + 2) == '/'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" (* "*") (cast_expression "(char *)((int)ppppppiVar19 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar19 + 2)" (( "(") (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar19")) (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);\n                  cVar2 = *(char *)((int)ppppppiVar19 + 3);\n                  while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }\n                  ppppppiVar16 = ppppppiVar19;\n                  if (cVar2 == '\0') break;\n                }" ({ "{") (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3)" (identifier "ppppppiVar10") (= "=") (cast_expression "(int ******)((int)ppppppiVar19 + 3)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppiVar19 + 3)" (( "(") (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar19")) (+ "+") (number_literal "3")) () ")")))) (; ";")) (expression_statement "cVar2 = *(char *)((int)ppppppiVar19 + 3);" (assignment_expression "cVar2 = *(char *)((int)ppppppiVar19 + 3)" (identifier "cVar2") (= "=") (pointer_expression "*(char *)((int)ppppppiVar19 + 3)" (* "*") (cast_expression "(char *)((int)ppppppiVar19 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar19 + 3)" (( "(") (binary_expression "(int)ppppppiVar19 + 3" (cast_expression "(int)ppppppiVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar19")) (+ "+") (number_literal "3")) () ")"))))) (; ";")) (while_statement "while (cVar2 == '/') {\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" (while "while") (parenthesized_expression "(cVar2 == '/')" (( "(") (binary_expression "cVar2 == '/'" (identifier "cVar2") (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);\n                    cVar2 = *(char *)ppppppiVar10;\n                  }" ({ "{") (expression_statement "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);" (assignment_expression "ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1)" (identifier "ppppppiVar10") (= "=") (cast_expression "(int ******)((int)ppppppiVar10 + 1)" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppiVar10 + 1)" (( "(") (binary_expression "(int)ppppppiVar10 + 1" (cast_expression "(int)ppppppiVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar10")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" (identifier "cVar2") (= "=") (pointer_expression "*(char *)ppppppiVar10" (* "*") (cast_expression "(char *)ppppppiVar10" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar10")))) (; ";")) (} "}"))) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar19")) (; ";")) (if_statement "if (cVar2 == '\0') break;" (if "if") (parenthesized_expression "(cVar2 == '\0')" (( "(") (binary_expression "cVar2 == '\0'" (identifier "cVar2") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (else_clause "else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" (else "else") (if_statement "if (*(char *)((int)ppppppiVar19 + 2) != '\0') {\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" (if "if") (parenthesized_expression "(*(char *)((int)ppppppiVar19 + 2) != '\0')" (( "(") (binary_expression "*(char *)((int)ppppppiVar19 + 2) != '\0'" (pointer_expression "*(char *)((int)ppppppiVar19 + 2)" (* "*") (cast_expression "(char *)((int)ppppppiVar19 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar19 + 2)" (( "(") (binary_expression "(int)ppppppiVar19 + 2" (cast_expression "(int)ppppppiVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar19")) (+ "+") (number_literal "2")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  cVar2 = *(char *)ppppppiVar19;\n                  goto LAB_000dedb8;\n                }" ({ "{") (expression_statement "cVar2 = *(char *)ppppppiVar19;" (assignment_expression "cVar2 = *(char *)ppppppiVar19" (identifier "cVar2") (= "=") (pointer_expression "*(char *)ppppppiVar19" (* "*") (cast_expression "(char *)ppppppiVar19" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar19")))) (; ";")) (goto_statement "goto LAB_000dedb8;" (goto "goto") (statement_identifier "LAB_000dedb8") (; ";")) (} "}"))))) (expression_statement "ppppppiVar16 = ppppppiVar19;" (assignment_expression "ppppppiVar16 = ppppppiVar19" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar19")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(char *)ppppppiVar10 == '*')" (( "(") (binary_expression "*(char *)ppppppiVar10 == '*'" (pointer_expression "*(char *)ppppppiVar10" (* "*") (cast_expression "(char *)ppppppiVar10" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar10"))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (; ";")) (expression_statement "cVar2 = *(char *)ppppppiVar10;" (assignment_expression "cVar2 = *(char *)ppppppiVar10" (identifier "cVar2") (= "=") (pointer_expression "*(char *)ppppppiVar10" (* "*") (cast_expression "(char *)ppppppiVar10" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppiVar10")))) (; ";")) (labeled_statement "LAB_000dedb8:\n              *(int *)(puVar8 + -0x40) = (int)cVar2;" (statement_identifier "LAB_000dedb8") (: ":") (expression_statement "*(int *)(puVar8 + -0x40) = (int)cVar2;" (assignment_expression "*(int *)(puVar8 + -0x40) = (int)cVar2" (pointer_expression "*(int *)(puVar8 + -0x40)" (* "*") (cast_expression "(int *)(puVar8 + -0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x40)" (( "(") (binary_expression "puVar8 + -0x40" (identifier "puVar8") (+ "+") (number_literal "-0x40")) () ")")))) (= "=") (cast_expression "(int)cVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "cVar2"))) (; ";"))) (expression_statement "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);" (assignment_expression "*(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0)" (pointer_expression "*(uint *)(puVar8 + -0x48)" (* "*") (cast_expression "(uint *)(puVar8 + -0x48)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (call_expression "(uint)(cVar2 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(cVar2 == 0)" (( "(") (binary_expression "cVar2 == 0" (identifier "cVar2") (== "==") (number_literal "0")) () ")")))) (; ";")) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" (identifier "uVar5") (= "=") (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(ppppppiVar16)" (( "(") (identifier "ppppppiVar16") () ")")))) (; ";")) (expression_statement "uVar14 = uVar14 | 0x210;" (assignment_expression "uVar14 = uVar14 | 0x210" (identifier "uVar14") (= "=") (binary_expression "uVar14 | 0x210" (identifier "uVar14") (| "|") (number_literal "0x210"))) (; ";")) (if_statement "if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;" (if "if") (parenthesized_expression "(*(int *)(puVar8 + -0x40) == 0)" (( "(") (binary_expression "*(int *)(puVar8 + -0x40) == 0" (pointer_expression "*(int *)(puVar8 + -0x40)" (* "*") (cast_expression "(int *)(puVar8 + -0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x40)" (( "(") (binary_expression "puVar8 + -0x40" (identifier "puVar8") (+ "+") (number_literal "-0x40")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000dee6c;" (goto "goto") (statement_identifier "LAB_000dee6c") (; ";"))) (} "}")) (else_clause "else {\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" (else "else") (compound_statement "{\n              *(undefined4 *)(puVar8 + -0x48) = 0;\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" (else "else") (compound_statement "{\n            *(undefined4 *)(puVar8 + -0x48) = 0;\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" (else "else") (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x48) = 0;\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar8 + -0x48) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x48) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x48)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "uVar20 = uVar5;" (assignment_expression "uVar20 = uVar5" (identifier "uVar20") (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar30 = uVar5;" (assignment_expression "uVar30 = uVar5" (identifier "uVar30") (= "=") (identifier "uVar5")) (; ";")) (if_statement "if (3 < (int)uVar5) {\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" (if "if") (parenthesized_expression "(3 < (int)uVar5)" (( "(") (binary_expression "3 < (int)uVar5" (number_literal "3") (< "<") (cast_expression "(int)uVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar5"))) () ")")) (compound_statement "{\n          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;\n          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));\n          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }\n        }" ({ "{") (if_statement "if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;" (if "if") (parenthesized_expression "(((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'))" (( "(") (binary_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||\n             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" (parenthesized_expression "((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'))" (( "(") (binary_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||\n              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/')" (( "(") (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 1))" (* "*") (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" (( "(") (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar16")) (+ "+") (parenthesized_expression "(uVar5 - 1)" (( "(") (binary_expression "uVar5 - 1" (identifier "uVar5") (- "-") (number_literal "1")) () ")"))) () ")")))) (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')" (( "(") (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 2))" (* "*") (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 2))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 2))" (( "(") (binary_expression "(int)ppppppiVar16 + (uVar5 - 2)" (cast_expression "(int)ppppppiVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar16")) (+ "+") (parenthesized_expression "(uVar5 - 2)" (( "(") (binary_expression "uVar5 - 2" (identifier "uVar5") (- "-") (number_literal "2")) () ")"))) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')" (( "(") (binary_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*'" (pointer_expression "*(char *)((int)ppppppiVar16 + (uVar5 - 3))" (* "*") (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 3))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 3))" (( "(") (binary_expression "(int)ppppppiVar16 + (uVar5 - 3)" (cast_expression "(int)ppppppiVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar16")) (+ "+") (parenthesized_expression "(uVar5 - 3)" (( "(") (binary_expression "uVar5 - 3" (identifier "uVar5") (- "-") (number_literal "3")) () ")"))) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_000dee6c;" (goto "goto") (statement_identifier "LAB_000dee6c") (; ";"))) (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6))" (identifier "pcVar29") (= "=") (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 6))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 6))" (( "(") (binary_expression "(int)ppppppiVar16 + (uVar5 - 6)" (cast_expression "(int)ppppppiVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar16")) (+ "+") (parenthesized_expression "(uVar5 - 6)" (( "(") (binary_expression "uVar5 - 6" (identifier "uVar5") (- "-") (number_literal "6")) () ")"))) () ")")))) (; ";")) (while_statement "while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" (while "while") (parenthesized_expression "((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)))" (( "(") (parenthesized_expression "(uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))" (( "(") (comma_expression "uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar18 = uVar30" (identifier "uVar18") (= "=") (identifier "uVar30")) (, ",") (comma_expression "uVar30 = uVar18, pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (assignment_expression "uVar30 = uVar18" (identifier "uVar30") (= "=") (identifier "uVar18")) (, ",") (binary_expression "pcVar29[2] == '/' &&\n                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (binary_expression "pcVar29[2] == '/'" (subscript_expression "pcVar29[2]" (identifier "pcVar29") ([ "[") (number_literal "2") (] "]")) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) (&& "&&") (parenthesized_expression "(uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30)" (( "(") (comma_expression "uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar30 = uVar18 - 3" (identifier "uVar30") (= "=") (binary_expression "uVar18 - 3" (identifier "uVar18") (- "-") (number_literal "3"))) (, ",") (comma_expression "uVar20 = uVar18, 3 < (int)uVar30" (assignment_expression "uVar20 = uVar18" (identifier "uVar20") (= "=") (identifier "uVar18")) (, ",") (binary_expression "3 < (int)uVar30" (number_literal "3") (< "<") (cast_expression "(int)uVar30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar30"))))) () ")"))))) () ")")) () ")")) (compound_statement "{\n            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;\n          }" ({ "{") (if_statement "if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))\n            break;" (if "if") (parenthesized_expression "((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))" (( "(") (binary_expression "(pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" (parenthesized_expression "(pcVar29[1] != '*')" (( "(") (binary_expression "pcVar29[1] != '*'" (subscript_expression "pcVar29[1]" (identifier "pcVar29") ([ "[") (number_literal "1") (] "]")) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*')" (( "(") (comma_expression "cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "cVar2 = *pcVar29" (identifier "cVar2") (= "=") (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29"))) (, ",") (comma_expression "pcVar29 = pcVar29 + -3, cVar2 != '*'" (assignment_expression "pcVar29 = pcVar29 + -3" (identifier "pcVar29") (= "=") (binary_expression "pcVar29 + -3" (identifier "pcVar29") (+ "+") (number_literal "-3"))) (, ",") (binary_expression "cVar2 != '*'" (identifier "cVar2") (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}"))) (} "}"))) (expression_statement "bVar1 = uVar30 != uVar5;" (assignment_expression "bVar1 = uVar30 != uVar5" (identifier "bVar1") (= "=") (binary_expression "uVar30 != uVar5" (identifier "uVar30") (!= "!=") (identifier "uVar5"))) (; ";")) (expression_statement "uVar5 = uVar20;" (assignment_expression "uVar5 = uVar20" (identifier "uVar5") (= "=") (identifier "uVar20")) (; ";")) (if_statement "if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {\n          uVar5 = uVar20 - 3;\n        }" (if "if") (parenthesized_expression "((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))))" (( "(") (binary_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&\n           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" (parenthesized_expression "(((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*'))" (( "(") (binary_expression "((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')" (parenthesized_expression "((bVar1) && (4 < uVar20))" (( "(") (binary_expression "(bVar1) && (4 < uVar20)" (parenthesized_expression "(bVar1)" (( "(") (identifier "bVar1") () ")")) (&& "&&") (parenthesized_expression "(4 < uVar20)" (( "(") (binary_expression "4 < uVar20" (number_literal "4") (< "<") (identifier "uVar20")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))" (( "(") (parenthesized_expression "(*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0'))" (( "(") (binary_expression "*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')" (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" (* "*") (cast_expression "(char *)(iVar3 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 2)" (( "(") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          uVar5 = uVar20 - 3;\n        }" ({ "{") (expression_statement "uVar5 = uVar20 - 3;" (assignment_expression "uVar5 = uVar20 - 3" (identifier "uVar5") (= "=") (binary_expression "uVar20 - 3" (identifier "uVar20") (- "-") (number_literal "3"))) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_000dee6c:\n      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" (statement_identifier "LAB_000dee6c") (: ":") (expression_statement "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));" (assignment_expression "pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1))" (identifier "pcVar29") (= "=") (cast_expression "(char *)((int)ppppppiVar16 + (uVar5 - 1))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppiVar16 + (uVar5 - 1))" (( "(") (binary_expression "(int)ppppppiVar16 + (uVar5 - 1)" (cast_expression "(int)ppppppiVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppiVar16")) (+ "+") (parenthesized_expression "(uVar5 - 1)" (( "(") (binary_expression "uVar5 - 1" (identifier "uVar5") (- "-") (number_literal "1")) () ")"))) () ")")))) (; ";"))) (if_statement "if (*pcVar29 == '/') {\n        *pcVar29 = '\0';\n      }" (if "if") (parenthesized_expression "(*pcVar29 == '/')" (( "(") (binary_expression "*pcVar29 == '/'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n        *pcVar29 = '\0';\n      }" ({ "{") (expression_statement "*pcVar29 = '\0';" (assignment_expression "*pcVar29 = '\0'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (} "}"))) (expression_statement "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);" (assignment_expression "iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800)" (identifier "iVar24") (= "=") (call_expression "glob_filename(ppppppiVar16,uVar14 | 0x800)" (identifier "glob_filename") (argument_list "(ppppppiVar16,uVar14 | 0x800)" (( "(") (identifier "ppppppiVar16") (, ",") (binary_expression "uVar14 | 0x800" (identifier "uVar14") (| "|") (number_literal "0x800")) () ")")))) (; ";")) (expression_statement "*(int *)(puVar8 + -0x30) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x30) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x30)" (* "*") (cast_expression "(int *)(puVar8 + -0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "iVar24")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (iVar24 == 0) {\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000df274:\n        iVar3 = 1;\n        ppppppiVar21 = *pppppppiVar7;\n        pppppppiVar4 = pppppppiVar7;\n        while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }\n        goto LAB_000df2ac;\n      }" ({ "{") (labeled_statement "LAB_000df274:\n        iVar3 = 1;" (statement_identifier "LAB_000df274") (: ":") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";"))) (expression_statement "ppppppiVar21 = *pppppppiVar7;" (assignment_expression "ppppppiVar21 = *pppppppiVar7" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiVar7" (* "*") (identifier "pppppppiVar7"))) (; ";")) (expression_statement "pppppppiVar4 = pppppppiVar7;" (assignment_expression "pppppppiVar4 = pppppppiVar7" (identifier "pppppppiVar4") (= "=") (identifier "pppppppiVar7")) (; ";")) (while_statement "while (ppppppiVar21 != (int ******)0x0) {\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" (while "while") (parenthesized_expression "(ppppppiVar21 != (int ******)0x0)" (( "(") (binary_expression "ppppppiVar21 != (int ******)0x0" (identifier "ppppppiVar21") (!= "!=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          pppppppiVar4 = pppppppiVar4 + 1;\n          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);\n          iVar23 = *(int *)(puVar8 + -0x50);\n          ppppppiVar21 = *pppppppiVar4;\n        }" ({ "{") (expression_statement "pppppppiVar4 = pppppppiVar4 + 1;" (assignment_expression "pppppppiVar4 = pppppppiVar4 + 1" (identifier "pppppppiVar4") (= "=") (binary_expression "pppppppiVar4 + 1" (identifier "pppppppiVar4") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "ppppppiVar21 = *pppppppiVar4;" (assignment_expression "ppppppiVar21 = *pppppppiVar4" (identifier "ppppppiVar21") (= "=") (pointer_expression "*pppppppiVar4" (* "*") (identifier "pppppppiVar4"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000df2ac;" (goto "goto") (statement_identifier "LAB_000df2ac") (; ";")) (} "}"))) (if_statement "if (iVar24 == *(int *)(iVar23 + -0x7174)) {\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" (if "if") (parenthesized_expression "(iVar24 == *(int *)(iVar23 + -0x7174))" (( "(") (binary_expression "iVar24 == *(int *)(iVar23 + -0x7174)" (identifier "iVar24") (== "==") (pointer_expression "*(int *)(iVar23 + -0x7174)" (* "*") (cast_expression "(int *)(iVar23 + -0x7174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7174)" (( "(") (binary_expression "iVar23 + -0x7174" (identifier "iVar23") (+ "+") (number_literal "-0x7174")) () ")"))))) () ")")) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);\n        return *(int ********)(puVar8 + -0x30);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(iVar23 + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))) (; ";")) (return_statement "return *(int ********)(puVar8 + -0x30);" (return "return") (pointer_expression "*(int ********)(puVar8 + -0x30)" (* "*") (cast_expression "(int ********)(puVar8 + -0x30)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")")))) (; ";")) (} "}"))) (expression_statement "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);" (assignment_expression "pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30)" (identifier "pcVar29") (= "=") (cast_expression "(char *)**(undefined4 **)(puVar8 + -0x30)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar8 + -0x30)" (* "*") (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 **)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")"))))))) (; ";")) (if_statement "if (pcVar29 == (char *)0x0) {\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" (if "if") (parenthesized_expression "(pcVar29 == (char *)0x0)" (( "(") (binary_expression "pcVar29 == (char *)0x0" (identifier "pcVar29") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));\n        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);\n        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(*(undefined4 **)(puVar8 + -0x30))" (( "(") (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 **)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))) (; ";")) (return_statement "return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);" (return "return") (pointer_expression "*(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" (* "*") (cast_expression "(int ********)(*(int *)(puVar8 + -0x50) + -0x7174)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 *)(puVar8 + -0x50) + -0x7174)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x7174" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x7174")) () ")")))) (; ";")) (} "}"))) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" (identifier "puVar31") (= "=") (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 **)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")"))))) (; ";")) (if_statement "if (*(int *)(puVar8 + -0x48) != 0) {\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" (if "if") (parenthesized_expression "(*(int *)(puVar8 + -0x48) != 0)" (( "(") (binary_expression "*(int *)(puVar8 + -0x48) != 0" (pointer_expression "*(int *)(puVar8 + -0x48)" (* "*") (cast_expression "(int *)(puVar8 + -0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }\n        puVar31 = *(undefined4 **)(puVar8 + -0x30);\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }\n      }" ({ "{") (if_statement "if (*(char *)(iVar3 + 1) != '*') {\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n          iVar24 = *(int *)(iVar23 + -0x7f90);\n          goto LAB_000def94;\n        }" ({ "{") (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")"))))) (; ";")) (goto_statement "goto LAB_000def94;" (goto "goto") (statement_identifier "LAB_000def94") (; ";")) (} "}"))) (expression_statement "puVar31 = *(undefined4 **)(puVar8 + -0x30);" (assignment_expression "puVar31 = *(undefined4 **)(puVar8 + -0x30)" (identifier "puVar31") (= "=") (pointer_expression "*(undefined4 **)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 **)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")"))))) (; ";")) (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" (if "if") (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" (( "(") (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" (( "(") (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" (* "*") (cast_expression "(char *)(iVar3 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 2)" (( "(") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));\n          iVar23 = *(int *)(puVar8 + -0x50);\n          iVar3 = *(int *)(puVar8 + -0x48);\n          ppppppiVar21 = (int ******)0x0;\n          pcVar29 = pcVar26;\n          goto LAB_000deb94;\n        }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));" (call_expression "(**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30))" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(puVar8 + -0x30))" (( "(") (pointer_expression "*(undefined4 *)(puVar8 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "iVar3 = *(int *)(puVar8 + -0x48);" (assignment_expression "iVar3 = *(int *)(puVar8 + -0x48)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar8 + -0x48)" (* "*") (cast_expression "(int *)(puVar8 + -0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")"))))) (; ";")) (expression_statement "ppppppiVar21 = (int ******)0x0;" (assignment_expression "ppppppiVar21 = (int ******)0x0" (identifier "ppppppiVar21") (= "=") (cast_expression "(int ******)0x0" (( "(") (type_descriptor "int ******" (primitive_type "int") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" (identifier "pcVar29") (= "=") (identifier "pcVar26")) (; ";")) (goto_statement "goto LAB_000deb94;" (goto "goto") (statement_identifier "LAB_000deb94") (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar24 = *(int *)(iVar23 + -0x7f90);" (assignment_expression "iVar24 = *(int *)(iVar23 + -0x7f90)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(iVar23 + -0x7f90)" (* "*") (cast_expression "(int *)(iVar23 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x7f90)" (( "(") (binary_expression "iVar23 + -0x7f90" (identifier "iVar23") (+ "+") (number_literal "-0x7f90")) () ")"))))) (; ";")) (labeled_statement "LAB_000def94:\n      iVar17 = 1;" (statement_identifier "LAB_000def94") (: ":") (expression_statement "iVar17 = 1;" (assignment_expression "iVar17 = 1" (identifier "iVar17") (= "=") (number_literal "1")) (; ";"))) (expression_statement "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;" (assignment_expression "*(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18" (pointer_expression "*(int *)(puVar8 + -0x2c)" (* "*") (cast_expression "(int *)(puVar8 + -0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x2c)" (( "(") (binary_expression "puVar8 + -0x2c" (identifier "puVar8") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (binary_expression "iVar24 + -0x5e18" (identifier "iVar24") (+ "+") (number_literal "-0x5e18"))) (; ";")) (expression_statement "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);" (assignment_expression "*(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960)" (pointer_expression "*(undefined4 *)(puVar8 + -0x40)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x40)" (( "(") (binary_expression "puVar8 + -0x40" (identifier "puVar8") (+ "+") (number_literal "-0x40")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(iVar23 + -0x6960)" (* "*") (cast_expression "(undefined4 *)(iVar23 + -0x6960)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x6960)" (( "(") (binary_expression "iVar23 + -0x6960" (identifier "iVar23") (+ "+") (number_literal "-0x6960")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;" (assignment_expression "*(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(puVar8 + -0x34)" (* "*") (cast_expression "(int *)(puVar8 + -0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x34)" (( "(") (binary_expression "puVar8 + -0x34" (identifier "puVar8") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (binary_expression "*(int *)(iVar23 + -0x6990) + -0x2924" (pointer_expression "*(int *)(iVar23 + -0x6990)" (* "*") (cast_expression "(int *)(iVar23 + -0x6990)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + -0x6990)" (( "(") (binary_expression "iVar23 + -0x6990" (identifier "iVar23") (+ "+") (number_literal "-0x6990")) () ")")))) (+ "+") (number_literal "-0x2924"))) (; ";")) (labeled_statement "LAB_000df010:\n      uVar5 = (uint)__quote & 0xfffffdee;" (statement_identifier "LAB_000df010") (: ":") (expression_statement "uVar5 = (uint)__quote & 0xfffffdee;" (assignment_expression "uVar5 = (uint)__quote & 0xfffffdee" (identifier "uVar5") (= "=") (binary_expression "(uint)__quote & 0xfffffdee" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0xfffffdee"))) (; ";"))) (if_statement "if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }\n      else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" (if "if") (parenthesized_expression "((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*'))" (( "(") (binary_expression "(*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "(*(int *)(puVar8 + -0x44) == 0)" (( "(") (binary_expression "*(int *)(puVar8 + -0x44) == 0" (pointer_expression "*(int *)(puVar8 + -0x44)" (* "*") (cast_expression "(int *)(puVar8 + -0x44)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x44)" (( "(") (binary_expression "puVar8 + -0x44" (identifier "puVar8") (+ "+") (number_literal "-0x44")) () ")")))) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (compound_statement "{\n        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;\n      }" ({ "{") (if_statement "if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;" (if "if") (parenthesized_expression "((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0'))" (( "(") (binary_expression "(*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')" (parenthesized_expression "(*pcVar29 == '\0')" (( "(") (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 1) != '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 1) != '\0'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_000defd0;" (goto "goto") (statement_identifier "LAB_000defd0") (; ";"))) (} "}")) (else_clause "else {\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" (else "else") (compound_statement "{\n        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }\n        if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }\n      }" ({ "{") (if_statement "if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {\n          uVar5 = uVar5 | 0x210;\n        }" (if "if") (parenthesized_expression "((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0'))" (( "(") (binary_expression "(*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')" (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" (( "(") (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" (* "*") (cast_expression "(char *)(iVar3 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 2)" (( "(") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 3) == '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 3) == '\0'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          uVar5 = uVar5 | 0x210;\n        }" ({ "{") (expression_statement "uVar5 = uVar5 | 0x210;" (assignment_expression "uVar5 = uVar5 | 0x210" (identifier "uVar5") (= "=") (binary_expression "uVar5 | 0x210" (identifier "uVar5") (| "|") (number_literal "0x210"))) (; ";")) (} "}"))) (if_statement "if (*pcVar29 == '\0') {\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" (if "if") (parenthesized_expression "(*pcVar29 == '\0')" (( "(") (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_000defd0:\n          uVar5 = uVar5 | 0x100;\n          pcVar29 = *(char **)(puVar8 + -0x2c);\n        }" ({ "{") (labeled_statement "LAB_000defd0:\n          uVar5 = uVar5 | 0x100;" (statement_identifier "LAB_000defd0") (: ":") (expression_statement "uVar5 = uVar5 | 0x100;" (assignment_expression "uVar5 = uVar5 | 0x100" (identifier "uVar5") (= "=") (binary_expression "uVar5 | 0x100" (identifier "uVar5") (| "|") (number_literal "0x100"))) (; ";"))) (expression_statement "pcVar29 = *(char **)(puVar8 + -0x2c);" (assignment_expression "pcVar29 = *(char **)(puVar8 + -0x2c)" (identifier "pcVar29") (= "=") (pointer_expression "*(char **)(puVar8 + -0x2c)" (* "*") (cast_expression "(char **)(puVar8 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x2c)" (( "(") (binary_expression "puVar8 + -0x2c" (identifier "puVar8") (+ "+") (number_literal "-0x2c")) () ")"))))) (; ";")) (} "}"))) (} "}")))) (expression_statement "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);" (assignment_expression "piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" (identifier "piVar15") (= "=") (cast_expression "(int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5)" (parenthesized_expression "(**(code **)(puVar8 + -0x40))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x40)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x40)" (* "*") (cast_expression "(code **)(puVar8 + -0x40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x40)" (( "(") (binary_expression "puVar8 + -0x40" (identifier "puVar8") (+ "+") (number_literal "-0x40")) () ")"))))) () ")")) (argument_list "(pcVar26,pcVar29,uVar5)" (( "(") (identifier "pcVar26") (, ",") (identifier "pcVar29") (, ",") (identifier "uVar5") () ")"))))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (piVar15 == (int *)0x0) goto LAB_000df26c;" (if "if") (parenthesized_expression "(piVar15 == (int *)0x0)" (( "(") (binary_expression "piVar15 == (int *)0x0" (identifier "piVar15") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000df26c;" (goto "goto") (statement_identifier "LAB_000df26c") (; ";"))) (if_statement "if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;" (if "if") (parenthesized_expression "(piVar15 == *(int **)(iVar23 + -0x7174))" (( "(") (binary_expression "piVar15 == *(int **)(iVar23 + -0x7174)" (identifier "piVar15") (== "==") (pointer_expression "*(int **)(iVar23 + -0x7174)" (* "*") (cast_expression "(int **)(iVar23 + -0x7174)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7174)" (( "(") (binary_expression "iVar23 + -0x7174" (identifier "iVar23") (+ "+") (number_literal "-0x7174")) () ")"))))) () ")")) (goto_statement "goto LAB_000df004;" (goto "goto") (statement_identifier "LAB_000df004") (; ";"))) (expression_statement "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10;" (assignment_expression "*(uint *)(puVar8 + -0x38) = uVar5 & 0x10" (pointer_expression "*(uint *)(puVar8 + -0x38)" (* "*") (cast_expression "(uint *)(puVar8 + -0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x38)" (( "(") (binary_expression "puVar8 + -0x38" (identifier "puVar8") (+ "+") (number_literal "-0x38")) () ")")))) (= "=") (binary_expression "uVar5 & 0x10" (identifier "uVar5") (& "&") (number_literal "0x10"))) (; ";")) (if_statement "if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }\n      else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" (if "if") (parenthesized_expression "(((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))))" (( "(") (binary_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" (parenthesized_expression "((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')\n          )" (( "(") (binary_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')" (parenthesized_expression "(((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*'))" (( "(") (binary_expression "((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')" (parenthesized_expression "((uVar5 & 0x10) == 0)" (( "(") (binary_expression "(uVar5 & 0x10) == 0" (parenthesized_expression "(uVar5 & 0x10)" (( "(") (binary_expression "uVar5 & 0x10" (identifier "uVar5") (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)(iVar3 + 2) != '*')" (( "(") (binary_expression "*(char *)(iVar3 + 2) != '*'" (pointer_expression "*(char *)(iVar3 + 2)" (* "*") (cast_expression "(char *)(iVar3 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 2)" (( "(") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))" (( "(") (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/'))" (( "(") (binary_expression "*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')" (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "(*(char *)(iVar3 + 3) != '/')" (( "(") (binary_expression "*(char *)(iVar3 + 3) != '/'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);\n        iVar23 = *(int *)(puVar8 + -0x50);\n        *(undefined4 *)(puVar8 + -0x3c) = 0;\nLAB_000df0a0:\n        iVar24 = 0;\n        if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }\n      }" ({ "{") (expression_statement "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" (identifier "piVar11") (= "=") (cast_expression "(int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote)" (parenthesized_expression "(**(code **)(puVar8 + -0x34))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x34)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x34)" (* "*") (cast_expression "(code **)(puVar8 + -0x34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x34)" (( "(") (binary_expression "puVar8 + -0x34" (identifier "puVar8") (+ "+") (number_literal "-0x34")) () ")"))))) () ")")) (argument_list "(*puVar31,piVar15,__quote)" (( "(") (pointer_expression "*puVar31" (* "*") (identifier "puVar31")) (, ",") (identifier "piVar15") (, ",") (identifier "__quote") () ")"))))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000df0a0:\n        iVar24 = 0;" (statement_identifier "LAB_000df0a0") (: ":") (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" (identifier "iVar24") (= "=") (number_literal "0")) (; ";"))) (if_statement "if (*piVar11 != 0) {\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" (if "if") (parenthesized_expression "(*piVar11 != 0)" (( "(") (binary_expression "*piVar11 != 0" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000df0ac:\n          iVar24 = 0;\n          piVar13 = piVar11;\n          do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);\n        }" ({ "{") (labeled_statement "LAB_000df0ac:\n          iVar24 = 0;" (statement_identifier "LAB_000df0ac") (: ":") (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" (identifier "iVar24") (= "=") (number_literal "0")) (; ";"))) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" (identifier "piVar13") (= "=") (identifier "piVar11")) (; ";")) (do_statement "do {\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          } while (*piVar13 != 0);" (do "do") (compound_statement "{\n            piVar13 = piVar13 + 1;\n            iVar24 = iVar24 + 1;\n          }" ({ "{") (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" (identifier "piVar13") (= "=") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" (identifier "iVar24") (= "=") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*piVar13 != 0)" (( "(") (binary_expression "*piVar13 != 0" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" (else "else") (compound_statement "{\n        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;\n        piVar11 = piVar15;\n        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;\n        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;\n        if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }\n        if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }\n        iVar24 = 0;\n      }" ({ "{") (expression_statement "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = uVar5 & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" (* "*") (cast_expression "(uint *)(puVar8 + -0x3c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (binary_expression "uVar5 & 0x100" (identifier "uVar5") (& "&") (number_literal "0x100"))) (; ";")) (expression_statement "piVar11 = piVar15;" (assignment_expression "piVar11 = piVar15" (identifier "piVar11") (= "=") (identifier "piVar15")) (; ";")) (if_statement "if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;" (if "if") (parenthesized_expression "((uVar5 & 0x100) == 0)" (( "(") (binary_expression "(uVar5 & 0x100) == 0" (parenthesized_expression "(uVar5 & 0x100)" (( "(") (binary_expression "uVar5 & 0x100" (identifier "uVar5") (& "&") (number_literal "0x100")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000df0a0;" (goto "goto") (statement_identifier "LAB_000df0a0") (; ";"))) (expression_statement "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;" (assignment_expression "*(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100" (pointer_expression "*(uint *)(puVar8 + -0x3c)" (* "*") (cast_expression "(uint *)(puVar8 + -0x3c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x100"))) (; ";")) (if_statement "if (((uint)__quote & 0x100) != 0) {\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" (if "if") (parenthesized_expression "(((uint)__quote & 0x100) != 0)" (( "(") (binary_expression "((uint)__quote & 0x100) != 0" (parenthesized_expression "((uint)__quote & 0x100)" (( "(") (binary_expression "(uint)__quote & 0x100" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x100")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar8 + -0x3c) = 0;\n          goto LAB_000df0a0;\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 0;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 0" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_000df0a0;" (goto "goto") (statement_identifier "LAB_000df0a0") (; ";")) (} "}"))) (if_statement "if ((char *)*piVar15 != (char *)0x0) {\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" (if "if") (parenthesized_expression "((char *)*piVar15 != (char *)0x0)" (( "(") (binary_expression "(char *)*piVar15 != (char *)0x0" (cast_expression "(char *)*piVar15" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar15" (* "*") (identifier "piVar15"))) (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          piVar13 = piVar15;\n          if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }\n          goto LAB_000df0ac;\n        }" ({ "{") (expression_statement "piVar13 = piVar15;" (assignment_expression "piVar13 = piVar15" (identifier "piVar13") (= "=") (identifier "piVar15")) (; ";")) (if_statement "if (*(char *)*piVar15 == '\0') {\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" (if "if") (parenthesized_expression "(*(char *)*piVar15 == '\0')" (( "(") (binary_expression "*(char *)*piVar15 == '\0'" (pointer_expression "*(char *)*piVar15" (* "*") (cast_expression "(char *)*piVar15" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar15" (* "*") (identifier "piVar15")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');\n            iVar24 = *(int *)(puVar8 + -0x3c);\n            piVar13 = piVar15 + iVar24;\n            do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);\n            *(undefined4 *)(puVar8 + -0x3c) = 1;\n            goto LAB_000df0a0;\n          }" ({ "{") (do_statement "do {\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            } while (*pcVar29 == '\0');" (do "do") (compound_statement "{\n              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;\n              pcVar29 = (char *)piVar13[1];\n              if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }\n              piVar13 = piVar13 + 1;\n            }" ({ "{") (expression_statement "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;" (assignment_expression "*(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (binary_expression "*(int *)(puVar8 + -0x3c) + 1" (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar29 = (char *)piVar13[1];" (assignment_expression "pcVar29 = (char *)piVar13[1]" (identifier "pcVar29") (= "=") (cast_expression "(char *)piVar13[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "piVar13[1]" (identifier "piVar13") ([ "[") (number_literal "1") (] "]")))) (; ";")) (if_statement "if (pcVar29 == (char *)0x0) {\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" (if "if") (parenthesized_expression "(pcVar29 == (char *)0x0)" (( "(") (binary_expression "pcVar29 == (char *)0x0" (identifier "pcVar29") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];\n                *(undefined4 *)(puVar8 + -0x3c) = 1;\n                goto LAB_000df0a0;\n              }" ({ "{") (expression_statement "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];" (assignment_expression "*piVar15 = piVar15[*(int *)(puVar8 + -0x3c)]" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (= "=") (subscript_expression "piVar15[*(int *)(puVar8 + -0x3c)]" (identifier "piVar15") ([ "[") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000df0a0;" (goto "goto") (statement_identifier "LAB_000df0a0") (; ";")) (} "}"))) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" (identifier "piVar13") (= "=") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*pcVar29 == '\0')" (( "(") (binary_expression "*pcVar29 == '\0'" (pointer_expression "*pcVar29" (* "*") (identifier "pcVar29")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")"))))) (; ";")) (expression_statement "piVar13 = piVar15 + iVar24;" (assignment_expression "piVar13 = piVar15 + iVar24" (identifier "piVar13") (= "=") (binary_expression "piVar15 + iVar24" (identifier "piVar15") (+ "+") (identifier "iVar24"))) (; ";")) (do_statement "do {\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            } while (iVar12 != 0);" (do "do") (compound_statement "{\n              iVar12 = *piVar13;\n              piVar13[-iVar24] = iVar12;\n              piVar13 = piVar13 + 1;\n            }" ({ "{") (expression_statement "iVar12 = *piVar13;" (assignment_expression "iVar12 = *piVar13" (identifier "iVar12") (= "=") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (; ";")) (expression_statement "piVar13[-iVar24] = iVar12;" (assignment_expression "piVar13[-iVar24] = iVar12" (subscript_expression "piVar13[-iVar24]" (identifier "piVar13") ([ "[") (unary_expression "-iVar24" (- "-") (identifier "iVar24")) (] "]")) (= "=") (identifier "iVar12")) (; ";")) (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" (identifier "piVar13") (= "=") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "*(undefined4 *)(puVar8 + -0x3c) = 1;" (assignment_expression "*(undefined4 *)(puVar8 + -0x3c) = 1" (pointer_expression "*(undefined4 *)(puVar8 + -0x3c)" (* "*") (cast_expression "(undefined4 *)(puVar8 + -0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000df0a0;" (goto "goto") (statement_identifier "LAB_000df0a0") (; ";")) (} "}"))) (goto_statement "goto LAB_000df0ac;" (goto "goto") (statement_identifier "LAB_000df0ac") (; ";")) (} "}"))) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" (identifier "iVar24") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);" (assignment_expression "iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" (identifier "iVar24") (= "=") (call_expression "(**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4)" (parenthesized_expression "(**(code **)(iVar23 + -0x6098))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x6098)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x6098)" (* "*") (cast_expression "(code **)(iVar23 + -0x6098)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x6098)" (( "(") (binary_expression "iVar23 + -0x6098" (identifier "iVar23") (+ "+") (number_literal "-0x6098")) () ")"))))) () ")")) (argument_list "(pppppppiVar7,(iVar17 + iVar24) * 4)" (( "(") (identifier "pppppppiVar7") (, ",") (binary_expression "(iVar17 + iVar24) * 4" (parenthesized_expression "(iVar17 + iVar24)" (( "(") (binary_expression "iVar17 + iVar24" (identifier "iVar17") (+ "+") (identifier "iVar24")) () ")")) (* "*") (number_literal "4")) () ")")))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar8 + -0x48) = iVar24;" (assignment_expression "*(int *)(puVar8 + -0x48) = iVar24" (pointer_expression "*(int *)(puVar8 + -0x48)" (* "*") (cast_expression "(int *)(puVar8 + -0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (= "=") (identifier "iVar24")) (; ";")) (if_statement "if (iVar24 == 0) {\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar33 = *(code **)(iVar23 + -0x5f94);\n        iVar3 = *piVar11;\n        piVar15 = piVar11;\n        while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);\n        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;\n        goto LAB_000df274;\n      }" ({ "{") (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (expression_statement "iVar3 = *piVar11;" (assignment_expression "iVar3 = *piVar11" (identifier "iVar3") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (expression_statement "piVar15 = piVar11;" (assignment_expression "piVar15 = piVar11" (identifier "piVar15") (= "=") (identifier "piVar11")) (; ";")) (while_statement "while (iVar3 != 0) {\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" (while "while") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          piVar15 = piVar15 + 1;\n          (*pcVar33)();\n          iVar23 = *(int *)(puVar8 + -0x50);\n          pcVar33 = *(code **)(iVar23 + -0x5f94);\n          iVar3 = *piVar15;\n        }" ({ "{") (expression_statement "piVar15 = piVar15 + 1;" (assignment_expression "piVar15 = piVar15 + 1" (identifier "piVar15") (= "=") (binary_expression "piVar15 + 1" (identifier "piVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "pcVar33 = *(code **)(iVar23 + -0x5f94);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x5f94)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) (; ";")) (expression_statement "iVar3 = *piVar15;" (assignment_expression "iVar3 = *piVar15" (identifier "iVar3") (= "=") (pointer_expression "*piVar15" (* "*") (identifier "piVar15"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(piVar11)" (( "(") (identifier "piVar11") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (labeled_statement "LAB_000df26c:\n        piVar15 = *(int **)(iVar23 + -0x7cfc);" (statement_identifier "LAB_000df26c") (: ":") (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";"))) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;" (if "if") (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 == (int *******)0x0" (identifier "pppppppiVar7") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000df2c8;" (goto "goto") (statement_identifier "LAB_000df2c8") (; ";"))) (goto_statement "goto LAB_000df274;" (goto "goto") (statement_identifier "LAB_000df274") (; ";")) (} "}"))) (expression_statement "iVar24 = *piVar11;" (assignment_expression "iVar24 = *piVar11" (identifier "iVar24") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (if_statement "if (iVar24 != 0) {\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" (if "if") (parenthesized_expression "(iVar24 != 0)" (( "(") (binary_expression "iVar24 != 0" (identifier "iVar24") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;\n        piVar13 = piVar11;\n        do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);\n      }" ({ "{") (expression_statement "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;" (assignment_expression "iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4" (identifier "iVar12") (= "=") (binary_expression "*(int *)(puVar8 + -0x48) + iVar17 * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" (* "*") (cast_expression "(int *)(puVar8 + -0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (+ "+") (binary_expression "iVar17 * 4" (identifier "iVar17") (* "*") (number_literal "4")))) (; ";")) (expression_statement "piVar13 = piVar11;" (assignment_expression "piVar13 = piVar11" (identifier "piVar13") (= "=") (identifier "piVar11")) (; ";")) (do_statement "do {\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        } while (iVar24 != 0);" (do "do") (compound_statement "{\n          piVar13 = piVar13 + 1;\n          iVar17 = iVar17 + 1;\n          *(int *)(iVar12 + -4) = iVar24;\n          iVar24 = *piVar13;\n          iVar12 = iVar12 + 4;\n        }" ({ "{") (expression_statement "piVar13 = piVar13 + 1;" (assignment_expression "piVar13 = piVar13 + 1" (identifier "piVar13") (= "=") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar17 = iVar17 + 1;" (assignment_expression "iVar17 = iVar17 + 1" (identifier "iVar17") (= "=") (binary_expression "iVar17 + 1" (identifier "iVar17") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *)(iVar12 + -4) = iVar24;" (assignment_expression "*(int *)(iVar12 + -4) = iVar24" (pointer_expression "*(int *)(iVar12 + -4)" (* "*") (cast_expression "(int *)(iVar12 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -4)" (( "(") (binary_expression "iVar12 + -4" (identifier "iVar12") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar24")) (; ";")) (expression_statement "iVar24 = *piVar13;" (assignment_expression "iVar24 = *piVar13" (identifier "iVar24") (= "=") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (; ";")) (expression_statement "iVar12 = iVar12 + 4;" (assignment_expression "iVar12 = iVar12 + 4" (identifier "iVar12") (= "=") (binary_expression "iVar12 + 4" (identifier "iVar12") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar24 != 0)" (( "(") (binary_expression "iVar24 != 0" (identifier "iVar24") (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4)" (( "(") (binary_expression "*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4" (pointer_expression "*(int *)(puVar8 + -0x48)" (* "*") (cast_expression "(int *)(puVar8 + -0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")")))) (+ "+") (binary_expression "(iVar17 + 0x3fffffff) * 4" (parenthesized_expression "(iVar17 + 0x3fffffff)" (( "(") (binary_expression "iVar17 + 0x3fffffff" (identifier "iVar17") (+ "+") (number_literal "0x3fffffff")) () ")")) (* "*") (number_literal "4"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (piVar15 == piVar11) {\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }\n      else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" (if "if") (parenthesized_expression "(piVar15 == piVar11)" (( "(") (binary_expression "piVar15 == piVar11" (identifier "piVar15") (== "==") (identifier "piVar11")) () ")")) (compound_statement "{\n        iVar24 = *(int *)(puVar8 + -0x3c);\n        if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }\n      }" ({ "{") (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")"))))) (; ";")) (if_statement "if (*(int *)(puVar8 + -0x38) != 0) {\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" (if "if") (parenthesized_expression "(*(int *)(puVar8 + -0x38) != 0)" (( "(") (binary_expression "*(int *)(puVar8 + -0x38) != 0" (pointer_expression "*(int *)(puVar8 + -0x38)" (* "*") (cast_expression "(int *)(puVar8 + -0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x38)" (( "(") (binary_expression "puVar8 + -0x38" (identifier "puVar8") (+ "+") (number_literal "-0x38")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;\n          iVar24 = *(int *)(puVar8 + -0x3c);\n          if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }\n        }" ({ "{") (if_statement "if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 1) != '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) != '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (!= "!=") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (goto_statement "goto LAB_000df14c;" (goto "goto") (statement_identifier "LAB_000df14c") (; ";"))) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")"))))) (; ";")) (if_statement "if (*(char *)(iVar3 + 2) == '*') {\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 2) == '*')" (( "(") (binary_expression "*(char *)(iVar3 + 2) == '*'" (pointer_expression "*(char *)(iVar3 + 2)" (* "*") (cast_expression "(char *)(iVar3 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 2)" (( "(") (binary_expression "iVar3 + 2" (identifier "iVar3") (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;\n            (**(code **)(iVar23 + -0x5f94))(piVar11);\n            iVar23 = *(int *)(puVar8 + -0x50);\n            iVar24 = *(int *)(puVar8 + -0x3c);\n          }" ({ "{") (if_statement "if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 3) != '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 3) != '\0'" (pointer_expression "*(char *)(iVar3 + 3)" (* "*") (cast_expression "(char *)(iVar3 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 3)" (( "(") (binary_expression "iVar3 + 3" (identifier "iVar3") (+ "+") (number_literal "3")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000df14c;" (goto "goto") (statement_identifier "LAB_000df14c") (; ";"))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(piVar11)" (( "(") (identifier "piVar11") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (} "}")) (else_clause "else {\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" (else "else") (compound_statement "{\n        (**(code **)(iVar23 + -0x5f94))(piVar11);\n        iVar23 = *(int *)(puVar8 + -0x50);\nLAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);\n      }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x5f94))(piVar11);" (call_expression "(**(code **)(iVar23 + -0x5f94))(piVar11)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(piVar11)" (( "(") (identifier "piVar11") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (labeled_statement "LAB_000df14c:\n        iVar24 = *(int *)(puVar8 + -0x3c);" (statement_identifier "LAB_000df14c") (: ":") (expression_statement "iVar24 = *(int *)(puVar8 + -0x3c);" (assignment_expression "iVar24 = *(int *)(puVar8 + -0x3c)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(puVar8 + -0x3c)" (* "*") (cast_expression "(int *)(puVar8 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x3c)" (( "(") (binary_expression "puVar8 + -0x3c" (identifier "puVar8") (+ "+") (number_literal "-0x3c")) () ")"))))) (; ";"))) (} "}")))) (expression_statement "pppppppiVar7 = *(int ********)(puVar8 + -0x48);" (assignment_expression "pppppppiVar7 = *(int ********)(puVar8 + -0x48)" (identifier "pppppppiVar7") (= "=") (pointer_expression "*(int ********)(puVar8 + -0x48)" (* "*") (cast_expression "(int ********)(puVar8 + -0x48)" (( "(") (type_descriptor "int ********" (primitive_type "int") (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 "(puVar8 + -0x48)" (( "(") (binary_expression "puVar8 + -0x48" (identifier "puVar8") (+ "+") (number_literal "-0x48")) () ")"))))) (; ";")) (if_statement "if (iVar24 == 0) goto LAB_000df004;" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000df004;" (goto "goto") (statement_identifier "LAB_000df004") (; ";"))) (expression_statement "piVar15 = *(int **)(puVar8 + -0x30);" (assignment_expression "piVar15 = *(int **)(puVar8 + -0x30)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(puVar8 + -0x30)" (* "*") (cast_expression "(int **)(puVar8 + -0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x30)" (( "(") (binary_expression "puVar8 + -0x30" (identifier "puVar8") (+ "+") (number_literal "-0x30")) () ")"))))) (; ";")) (goto_statement "goto LAB_000df34c;" (goto "goto") (statement_identifier "LAB_000df34c") (; ";")) (} "}"))) (if_statement "if (*(char *)(iVar3 + 1) == '\0') {\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 1) == '\0')" (( "(") (binary_expression "*(char *)(iVar3 + 1) == '\0'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);\n      iVar17 = *(int *)(puVar8 + -0x50);\n      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;\n      if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }\n      iVar3 = 1;\n      if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }\n      iVar24 = iVar24 + 2;\n      goto LAB_000df638;\n    }" ({ "{") (expression_statement "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);" (assignment_expression "pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" (( "(") (type_descriptor "int *******" (primitive_type "int") (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 *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x6098)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x6098)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x6098" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x6098")) () ")"))))) () ")")) (argument_list "(pppppppiVar7,8)" (( "(") (identifier "pppppppiVar7") (, ",") (number_literal "8") () ")"))))) (; ";")) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;" (if "if") (parenthesized_expression "(pppppppiVar7 == (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 == (int *******)0x0" (identifier "pppppppiVar7") (== "==") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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_000df3a4;" (goto "goto") (statement_identifier "LAB_000df3a4") (; ";"))) (if_statement "if (uVar5 == 0) {\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" (if "if") (parenthesized_expression "(uVar5 == 0)" (( "(") (binary_expression "uVar5 == 0" (identifier "uVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar3 = 1;\n        goto LAB_000df634;\n      }" ({ "{") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000df634;" (goto "goto") (statement_identifier "LAB_000df634") (; ";")) (} "}"))) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (if_statement "if (iVar23 == 2) {\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" (if "if") (parenthesized_expression "(iVar23 == 2)" (( "(") (binary_expression "iVar23 == 2" (identifier "iVar23") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n        if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }\n        goto LAB_000df634;\n      }" ({ "{") (if_statement "if (((uint)__quote & 0x800) == 0) {\n          iVar3 = 1;\n        }\n        else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" (if "if") (parenthesized_expression "(((uint)__quote & 0x800) == 0)" (( "(") (binary_expression "((uint)__quote & 0x800) == 0" (parenthesized_expression "((uint)__quote & 0x800)" (( "(") (binary_expression "(uint)__quote & 0x800" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x800")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          iVar3 = 1;\n        }" ({ "{") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" (else "else") (compound_statement "{\n          FUN_000ddacc(ppppppiVar21);\n          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);\n          iVar17 = *(int *)(puVar8 + -0x50);\n          iVar3 = 1;\n        }" ({ "{") (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" (identifier "FUN_000ddacc") (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);" (assignment_expression "uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" (identifier "uVar5") (= "=") (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x60fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x60fc)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x60fc" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x60fc")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")")))) (; ";")) (expression_statement "iVar17 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar17 = *(int *)(puVar8 + -0x50)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (} "}")))) (goto_statement "goto LAB_000df634;" (goto "goto") (statement_identifier "LAB_000df634") (; ";")) (} "}"))) (expression_statement "iVar24 = iVar24 + 2;" (assignment_expression "iVar24 = iVar24 + 2" (identifier "iVar24") (= "=") (binary_expression "iVar24 + 2" (identifier "iVar24") (+ "+") (number_literal "2"))) (; ";")) (goto_statement "goto LAB_000df638;" (goto "goto") (statement_identifier "LAB_000df638") (; ";")) (} "}"))) (expression_statement "FUN_000ddacc(ppppppiVar21);" (call_expression "FUN_000ddacc(ppppppiVar21)" (identifier "FUN_000ddacc") (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);" (call_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7)" (parenthesized_expression "(**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x5f94)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x5f94" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(pppppppiVar7)" (( "(") (identifier "pppppppiVar7") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "uVar30 = (uint)__quote & 0xfffffffe;" (assignment_expression "uVar30 = (uint)__quote & 0xfffffffe" (identifier "uVar30") (= "=") (binary_expression "(uint)__quote & 0xfffffffe" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0xfffffffe"))) (; ";")) (expression_statement "uVar14 = uVar30;" (assignment_expression "uVar14 = uVar30" (identifier "uVar14") (= "=") (identifier "uVar30")) (; ";")) (if_statement "if (((uint)__quote & 0x400) != 0) {\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" (if "if") (parenthesized_expression "(((uint)__quote & 0x400) != 0)" (( "(") (binary_expression "((uint)__quote & 0x400) != 0" (parenthesized_expression "((uint)__quote & 0x400)" (( "(") (binary_expression "(uint)__quote & 0x400" (cast_expression "(uint)__quote" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "__quote")) (& "&") (number_literal "0x400")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }\n      iVar3 = 1;\n      ppppppiVar16 = ppppppiVar21;\n      pcVar29 = pcVar26;\n      goto LAB_000debcc;\n    }" ({ "{") (if_statement "if (*(char *)(iVar3 + 1) == '*') {\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" (if "if") (parenthesized_expression "(*(char *)(iVar3 + 1) == '*')" (( "(") (binary_expression "*(char *)(iVar3 + 1) == '*'" (pointer_expression "*(char *)(iVar3 + 1)" (* "*") (cast_expression "(char *)(iVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 1)" (( "(") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1")) () ")")))) (== "==") (char_literal "'*'" (' "'") (character "*") (' "'"))) () ")")) (compound_statement "{\n        iVar3 = 1;\n        pcVar29 = pcVar26;\n        goto LAB_000df42c;\n      }" ({ "{") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" (identifier "pcVar29") (= "=") (identifier "pcVar26")) (; ";")) (goto_statement "goto LAB_000df42c;" (goto "goto") (statement_identifier "LAB_000df42c") (; ";")) (} "}"))) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (expression_statement "ppppppiVar16 = ppppppiVar21;" (assignment_expression "ppppppiVar16 = ppppppiVar21" (identifier "ppppppiVar16") (= "=") (identifier "ppppppiVar21")) (; ";")) (expression_statement "pcVar29 = pcVar26;" (assignment_expression "pcVar29 = pcVar26" (identifier "pcVar29") (= "=") (identifier "pcVar26")) (; ";")) (goto_statement "goto LAB_000debcc;" (goto "goto") (statement_identifier "LAB_000debcc") (; ";")) (} "}"))) (expression_statement "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);" (assignment_expression "pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" (identifier "pppppppiVar7") (= "=") (cast_expression "(int *******)glob_vector(pcVar26,ppppppiVar21,uVar30)" (( "(") (type_descriptor "int *******" (primitive_type "int") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "glob_vector(pcVar26,ppppppiVar21,uVar30)" (identifier "glob_vector") (argument_list "(pcVar26,ppppppiVar21,uVar30)" (( "(") (identifier "pcVar26") (, ",") (identifier "ppppppiVar21") (, ",") (identifier "uVar30") () ")"))))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (if_statement "if (pppppppiVar7 != (int *******)0x0) {\n      iVar3 = 1;\n      goto LAB_000debec;\n    }" (if "if") (parenthesized_expression "(pppppppiVar7 != (int *******)0x0)" (( "(") (binary_expression "pppppppiVar7 != (int *******)0x0" (identifier "pppppppiVar7") (!= "!=") (cast_expression "(int *******)0x0" (( "(") (type_descriptor "int *******" (primitive_type "int") (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      iVar3 = 1;\n      goto LAB_000debec;\n    }" ({ "{") (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" (identifier "iVar3") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000debec;" (goto "goto") (statement_identifier "LAB_000debec") (; ";")) (} "}"))) (} "}")))) (expression_statement "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21);" (call_expression "(**(code **)(iVar23 + -0x5f94))(ppppppiVar21)" (parenthesized_expression "(**(code **)(iVar23 + -0x5f94))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x5f94)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x5f94)" (* "*") (cast_expression "(code **)(iVar23 + -0x5f94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x5f94)" (( "(") (binary_expression "iVar23 + -0x5f94" (identifier "iVar23") (+ "+") (number_literal "-0x5f94")) () ")"))))) () ")")) (argument_list "(ppppppiVar21)" (( "(") (identifier "ppppppiVar21") () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cfc);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cfc)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) (; ";")) (labeled_statement "LAB_000df4b0:\n  if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" (statement_identifier "LAB_000df4b0") (: ":") (if_statement "if (*piVar15 == 0) {\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" (if "if") (parenthesized_expression "(*piVar15 == 0)" (( "(") (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" ({ "{") (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cf8)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf8)" (( "(") (binary_expression "iVar23 + -0x7cf8" (identifier "iVar23") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" (else "else") (compound_statement "{\n    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));\n    iVar23 = *(int *)(puVar8 + -0x50);\n    piVar15 = *(int **)(iVar23 + -0x7cf8);\n  }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));" (call_expression "(**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc))" (parenthesized_expression "(**(code **)(iVar23 + -0x7ce8))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x7ce8)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x7ce8)" (* "*") (cast_expression "(code **)(iVar23 + -0x7ce8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7ce8)" (( "(") (binary_expression "iVar23 + -0x7ce8" (identifier "iVar23") (+ "+") (number_literal "-0x7ce8")) () ")"))))) () ")")) (argument_list "(**(undefined4 **)(iVar23 + -0x7cfc))" (( "(") (pointer_expression "**(undefined4 **)(iVar23 + -0x7cfc)" (* "*") (pointer_expression "*(undefined4 **)(iVar23 + -0x7cfc)" (* "*") (cast_expression "(undefined4 **)(iVar23 + -0x7cfc)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cfc)" (( "(") (binary_expression "iVar23 + -0x7cfc" (identifier "iVar23") (+ "+") (number_literal "-0x7cfc")) () ")"))))) () ")"))) (; ";")) (expression_statement "iVar23 = *(int *)(puVar8 + -0x50);" (assignment_expression "iVar23 = *(int *)(puVar8 + -0x50)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")"))))) (; ";")) (expression_statement "piVar15 = *(int **)(iVar23 + -0x7cf8);" (assignment_expression "piVar15 = *(int **)(iVar23 + -0x7cf8)" (identifier "piVar15") (= "=") (pointer_expression "*(int **)(iVar23 + -0x7cf8)" (* "*") (cast_expression "(int **)(iVar23 + -0x7cf8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf8)" (( "(") (binary_expression "iVar23 + -0x7cf8" (identifier "iVar23") (+ "+") (number_literal "-0x7cf8")) () ")"))))) (; ";")) (} "}"))))) (if_statement "if (*piVar15 == 0) {\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }\n  else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" (if "if") (parenthesized_expression "(*piVar15 == 0)" (( "(") (binary_expression "*piVar15 == 0" (pointer_expression "*piVar15" (* "*") (identifier "piVar15")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pcVar33 = *(code **)(iVar23 + -0x7d20);\n  }" ({ "{") (expression_statement "pcVar33 = *(code **)(iVar23 + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(iVar23 + -0x7d20)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(iVar23 + -0x7d20)" (* "*") (cast_expression "(code **)(iVar23 + -0x7d20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7d20)" (( "(") (binary_expression "iVar23 + -0x7d20" (identifier "iVar23") (+ "+") (number_literal "-0x7d20")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" (else "else") (compound_statement "{\n    (**(code **)(iVar23 + -0x7cf4))();\n    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);\n  }" ({ "{") (expression_statement "(**(code **)(iVar23 + -0x7cf4))();" (call_expression "(**(code **)(iVar23 + -0x7cf4))()" (parenthesized_expression "(**(code **)(iVar23 + -0x7cf4))" (( "(") (pointer_expression "**(code **)(iVar23 + -0x7cf4)" (* "*") (pointer_expression "*(code **)(iVar23 + -0x7cf4)" (* "*") (cast_expression "(code **)(iVar23 + -0x7cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + -0x7cf4)" (( "(") (binary_expression "iVar23 + -0x7cf4" (identifier "iVar23") (+ "+") (number_literal "-0x7cf4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);" (assignment_expression "pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (identifier "pcVar33") (= "=") (pointer_expression "*(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (* "*") (cast_expression "(code **)(*(int *)(puVar8 + -0x50) + -0x7d20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x50) + -0x7d20)" (( "(") (binary_expression "*(int *)(puVar8 + -0x50) + -0x7d20" (pointer_expression "*(int *)(puVar8 + -0x50)" (* "*") (cast_expression "(int *)(puVar8 + -0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x50)" (( "(") (binary_expression "puVar8 + -0x50" (identifier "puVar8") (+ "+") (number_literal "-0x50")) () ")")))) (+ "+") (number_literal "-0x7d20")) () ")"))))) (; ";")) (} "}")))) (expression_statement "(*pcVar33)();" (call_expression "(*pcVar33)()" (parenthesized_expression "(*pcVar33)" (( "(") (pointer_expression "*pcVar33" (* "*") (identifier "pcVar33")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return pppppppiVar7;" (return "return") (identifier "pppppppiVar7") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) 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: (primitive_type) 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: (identifier))))))))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (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: (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: (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: (identifier)) (declaration type: (primitive_type) 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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (identifier)) (declaration type: (primitive_type) 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: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) 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: (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: (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (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: (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: (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (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: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) 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: (primitive_type) 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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) 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: (primitive_type) 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: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (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: (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: (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: (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: (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: (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: (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: (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: (primitive_type) 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: (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: (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: (primitive_type) 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: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (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: (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: (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: (primitive_type) 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: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (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: (pointer_declarator 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: (identifier)) (declaration type: (primitive_type) 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: (pointer_declarator 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: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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 (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (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: (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (cast_expression type: (type_descriptor type: (primitive_type) 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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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: (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) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (primitive_type) 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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) declarator: (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: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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: (primitive_type) 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)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (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))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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: (number_literal)))) (do_statement body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (primitive_type) 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 (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) 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: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (primitive_type) 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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (do_statement body: (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 (pointer_expression argument: (identifier))))) (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)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (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 (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier) index: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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))) (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: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (subscript_expression argument: (identifier) index: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (primitive_type) 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) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator 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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (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: (primitive_type) 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)))))) (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: (primitive_type) 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)))))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type) 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: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (identifier))))))) arguments: (argument_list))))) (return_statement (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (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: (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))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (char_literal (escape_sequence))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (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))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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)) 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)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (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)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (unary_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: (primitive_type) 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: (primitive_type) 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: (identifier))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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 (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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 (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: (parenthesized_expression (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: (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) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (goto_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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (binary_expression left: (identifier) right: (number_literal))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (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: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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)) 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: (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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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)))))))) (labeled_statement label: (statement_identifier) (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 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))))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_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 (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 (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)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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 (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (primitive_type) declarator: (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) 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: (primitive_type) 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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))) 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)))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))))))) (goto_statement label: (statement_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: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))))) condition: (parenthesized_expression (true)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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)))))) (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 (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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: (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: (primitive_type) 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: (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) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier)) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (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: (primitive_type) 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: (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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: (primitive_type) 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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (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)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) 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))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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 (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)))))))) (return_statement (identifier)))) (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 (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (primitive_type) 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)))))) (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: (primitive_type) 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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) declarator: (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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) declarator: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) declarator: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (goto_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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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))) (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) 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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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: (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 (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) declarator: (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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))) (goto_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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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: (primitive_type) 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: (identifier) right: (number_literal)))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (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: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (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))))))) (goto_statement label: (statement_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: (primitive_type) 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: (primitive_type) 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 (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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)))))) alternative: (else_clause (compound_statement (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: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (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)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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))))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (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: (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))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))) (expression_statement (assignment_expression left: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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 (return_statement (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (number_literal))) consequence: (compound_statement (return_statement (cast_expression type: (type_descriptor type: (primitive_type) 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: (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: (primitive_type) 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: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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 (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 (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: (primitive_type) declarator: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (return_statement (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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)))) (return_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 (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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: (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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (return_statement (cast_expression type: (type_descriptor type: (primitive_type) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator 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))))))))) alternative: (else_clause (compound_statement (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: (primitive_type) declarator: (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)))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (primitive_type) 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) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (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)))) (return_statement (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (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: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (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: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (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 (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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 (identifier)))) (return_statement (cast_expression type: (type_descriptor type: (primitive_type) 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: (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 (identifier) (identifier) (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 (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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 (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (char_literal (character)))) consequence: (compound_statement (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 (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (character)))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (do_statement body: (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: (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 (character)))) consequence: (break_statement)) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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))))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (break_statement))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (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: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (char_literal (character))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (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: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (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))))))) alternative: (else_clause (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))))))) alternative: (else_clause (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))) (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 (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (char_literal (character)))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (char_literal (character)))))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (char_literal (character)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (while_statement condition: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))))))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (identifier) right: (char_literal (character)))))))) consequence: (break_statement)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (identifier)) right: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (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 (character))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (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 (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (return_statement (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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: (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))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (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: (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)))) (return_statement (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (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))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))) 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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (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))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (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 (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_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: (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: (pointer_expression argument: (identifier)) right: (number_literal))))))) alternative: (else_clause (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (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)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (pointer_expression argument: (identifier)))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (unary_expression argument: (identifier))) right: (identifier))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) body: (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: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (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: (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (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))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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: (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: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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))))))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (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: (primitive_type) 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: (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)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (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 (assignment_expression left: (identifier) right: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (identifier) 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 (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 (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (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))) (goto_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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (return_statement (identifier)))))

/* WARNING: Removing unreachable block (ram,0x000ddde0) */
/* WARNING: Type propagation algorithm not settling */

int ******* MASKED(int *******param_1,uint param_2)

{
  bool bVar1;
  char cVar2;
  int iVar3;
  int *******pppppppiVar4;
  uint uVar5;
  int *******pppppppiVar6;
  int *******pppppppiVar7;
  undefined1 *puVar8;
  undefined4 uVar9;
  int ******ppppppiVar10;
  int *piVar11;
  int iVar12;
  int *piVar13;
  uint uVar14;
  int *piVar15;
  int ******ppppppiVar16;
  int iVar17;
  uint uVar18;
  int ******ppppppiVar19;
  uint uVar20;
  int ******ppppppiVar21;
  int *******pppppppiVar22;
  int iVar23;
  int *******__quote;
  int iVar24;
  int *******pppppppiVar25;
  int *******unaff_s2;
  char *pcVar26;
  int *******unaff_s3;
  int *******pppppppiVar27;
  int *******unaff_s4;
  int *******unaff_s5;
  int *******pppppppiVar28;
  char *pcVar29;
  int *******unaff_s6;
  uint uVar30;
  undefined4 *puVar31;
  int *******unaff_s7;
  undefined *puVar32;
  code *pcVar33;
  undefined1 *puVar34;
  int ******unaff_s8;
  code *pcVar35;
  undefined1 auStack_360 [8];
  undefined1 auStack_358 [8];
  int ******ppppppiStack_350;
  undefined1 *puStack_34c;
  code *pcStack_348;
  int *******pppppppiStack_340;
  uint uStack_33c;
  uint uStack_338;
  code *pcStack_334;
  uint uStack_330;
  int iStack_32c;
  undefined4 uStack_328;
  int *******pppppppiStack_324;
  uint uStack_320;
  code *pcStack_31c;
  int iStack_318;
  int iStack_314;
  int *******pppppppiStack_310;
  uint uStack_30c;
  int iStack_308;
  int *******pppppppiStack_304;
  undefined1 auStack_300 [164];
  char *pcStack_25c;
  int *******pppppppiStack_258;
  int *******pppppppiStack_254;
  int *******pppppppiStack_250;
  int *******pppppppiStack_24c;
  int *******pppppppiStack_248;
  int *******pppppppiStack_244;
  int *******pppppppiStack_240;
  int *******pppppppiStack_23c;
  int ******ppppppiStack_238;
  code *pcStack_234;
  code *pcStack_220;
  int *******pppppppiStack_218;
  int *******pppppppiStack_214;
  int *******pppppppiStack_210;
  code *pcStack_20c;
  code *pcStack_1f8;
  int *******pppppppiStack_1f0;
  undefined4 uStack_1ec;
  undefined4 uStack_1e8;
  int *******pppppppiStack_1e4;
  int *******pppppppiStack_1e0;
  int *******pppppppiStack_1dc;
  int *******pppppppiStack_1d8;
  code *pcStack_1d4;
  undefined *puStack_1c0;
  int *******pppppppiStack_1b4;
  int iStack_1b0;
  int iStack_1ac;
  int iStack_1a8;
  uint uStack_1a4;
  int *******pppppppiStack_1a0;
  int *******pppppppiStack_19c;
  int ******appppppiStack_198 [6];
  uint uStack_180;
  int *******pppppppiStack_f4;
  int ******appppppiStack_b0 [6];
  uint local_98;
  int local_c;
  
  local_c = *(int *)PTR___stack_chk_guard_0015858c;
  pppppppiVar7 = appppppiStack_b0;
  if ((param_2 & 0x10) == 0) {
    iVar3 = (*(code *)PTR___xstat64_001582e8)(3);
  }
  else {
    iVar3 = (*(code *)PTR___lxstat64_001582c8)(3);
  }
  if (iVar3 < 0) {
    pppppppiVar4 = (int *******)0xffffffff;
  }
  else if ((local_98 & 0xf000) == 0xa000) {
    pppppppiVar4 = (int *******)&SUB_fffffffe;
  }
  else {
    pppppppiVar4 = (int *******)-(uint)((local_98 & 0xf000) != 0x4000);
  }
  if (local_c == *(int *)PTR___stack_chk_guard_0015858c) {
    return pppppppiVar4;
  }
  iVar3 = local_c;
  puVar32 = PTR___stack_chk_fail_0015853c;
  (*(code *)PTR___stack_chk_fail_0015853c)();
  puStack_1c0 = puVar32 + 0x80e64;
  pppppppiStack_f4 = (int *******)**(undefined4 **)(puVar32 + 0x7aeb0);
  pppppppiVar25 = param_1;
  iStack_1b0 = iVar3;
  pppppppiStack_19c = param_1;
  pppppppiVar4 = (int *******)(**(code **)(puVar32 + 0x7ad68))();
  if (pppppppiVar4 == (int *******)0x0) {
    pppppppiVar6 = param_1;
    pppppppiVar4 = unaff_s7;
    if (((uint)pppppppiVar7 & 1) == 0) {
      pppppppiStack_1a0 = pppppppiStack_19c;
      pppppppiVar7 = (int *******)0x0;
      pppppppiVar22 = pppppppiVar25;
    }
    else {
      ppppppiVar21 = *param_1;
      if (ppppppiVar21 == (int ******)0x0) {
        pppppppiStack_1a0 = pppppppiStack_19c;
        pppppppiVar22 = (int *******)0x0;
        pppppppiVar7 = param_1;
      }
      else {
        unaff_s2 = (int *******)0x4000;
        unaff_s3 = (int *******)0x2f;
        do {
          iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,ppppppiVar21,appppppiStack_198);
          pppppppiVar6 = appppppiStack_198;
          if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {
            unaff_s5 = (int *******)*param_1;
            unaff_s4 = (int *******)(**(code **)(puStack_1c0 + -0x60fc))(unaff_s5);
            pppppppiVar22 = (int *******)((int)unaff_s4 + 2);
            pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x6098))(unaff_s5);
            pppppppiVar7 = param_1;
            if (pppppppiStack_1a0 == (int *******)0x0) goto LAB_000dd804;
            unaff_s4 = (int *******)((int)pppppppiStack_1a0 + (int)unaff_s4);
            *(undefined1 *)unaff_s4 = 0x2f;
            *(undefined1 *)((int)unaff_s4 + 1) = 0;
            *param_1 = (int ******)pppppppiStack_1a0;
          }
          param_1 = param_1 + 1;
          ppppppiVar21 = *param_1;
        } while (ppppppiVar21 != (int ******)0x0);
        pppppppiStack_1a0 = pppppppiStack_19c;
        pppppppiVar22 = (int *******)0x0;
        pppppppiVar7 = param_1;
      }
    }
  }
  else {
    unaff_s6 = (int *******)(int)*(char *)((int)pppppppiVar4 + iStack_1b0 + -1);
    pppppppiVar6 = (int *******)*pppppppiStack_19c;
    unaff_s8 = (int ******)(uint)(unaff_s6 != (int *******)0x2f);
    if (pppppppiVar6 == (int *******)0x0) {
      pppppppiStack_1a0 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(4);
      pppppppiVar22 = pppppppiVar25;
      if (pppppppiStack_1a0 != (int *******)0x0) {
        iVar3 = 0;
LAB_000dda68:
        *(undefined4 *)((int)pppppppiStack_1a0 + iVar3) = 0;
        pcVar33 = *(code **)(puStack_1c0 + -0x5f94);
        if (*pppppppiStack_19c != (int ******)0x0) {
          pppppppiVar22 = pppppppiStack_19c + 1;
          do {
            (*pcVar33)();
            pppppppiVar7 = pppppppiVar22 + 1;
            ppppppiVar21 = *pppppppiVar22;
            pcVar33 = *(code **)(puStack_1c0 + -0x5f94);
            pppppppiVar22 = pppppppiVar7;
          } while (ppppppiVar21 != (int ******)0x0);
        }
        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_19c);
        pppppppiVar22 = pppppppiVar25;
      }
    }
    else {
      unaff_s4 = pppppppiStack_19c + 1;
      pppppppiVar25 = unaff_s4;
      pppppppiVar22 = (int *******)0x0;
      do {
        pppppppiVar27 = pppppppiVar22;
        ppppppiVar21 = *pppppppiVar25;
        pppppppiVar22 = (int *******)((int)pppppppiVar27 + 1);
        pppppppiVar25 = pppppppiVar25 + 1;
      } while (ppppppiVar21 != (int ******)0x0);
      pppppppiVar27 =
           (int *******)(**(code **)(puStack_1c0 + -0x60a4))((int)((int)pppppppiVar27 + 2) * 4);
      pppppppiStack_1a0 = pppppppiVar27;
      if (pppppppiVar27 != (int *******)0x0) {
        unaff_s3 = (int *******)0x0;
        iStack_1ac = (int)pppppppiVar4 + 3;
        iStack_1a8 = (int)unaff_s8 + (int)pppppppiVar4;
        uStack_1a4 = (uint)pppppppiVar7 & 1;
        unaff_s8 = (int ******)appppppiStack_198;
        unaff_s2 = pppppppiVar27;
LAB_000dd968:
        pppppppiVar25 = pppppppiVar6;
        iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(pppppppiVar25);
        pppppppiVar7 = (int *******)(**(code **)(puStack_1c0 + -0x60a4))(iStack_1ac + iVar3);
        *unaff_s2 = (int ******)pppppppiVar7;
        pppppppiStack_1b4 = unaff_s2;
        if (pppppppiVar7 != (int *******)0x0) goto code_r0x000dd9a4;
        if (unaff_s3 != (int *******)0x0) {
          unaff_s3 = pppppppiVar27 + (int)unaff_s3;
          do {
            (**(code **)(puStack_1c0 + -0x5f94))(*pppppppiVar27);
            pppppppiVar27 = pppppppiVar27 + 1;
          } while (unaff_s3 != pppppppiVar27);
        }
        (**(code **)(puStack_1c0 + -0x5f94))(pppppppiStack_1a0);
        pppppppiStack_1a0 = (int *******)0x0;
        pppppppiVar6 = pppppppiVar25;
        unaff_s5 = pppppppiVar27;
      }
    }
  }
LAB_000dd804:
  if (pppppppiStack_f4 == (int *******)**(undefined4 **)(puStack_1c0 + -0x5fb4)) {
    return pppppppiStack_1a0;
  }
  pcVar33 = *(code **)(puStack_1c0 + -0x6004);
  pcVar35 = FUN_000ddacc;
  pppppppiVar25 = pppppppiStack_f4;
  (*pcVar33)();
  pcStack_1f8 = pcVar33 + 0x80a74;
  pppppppiStack_1e4 = (int *******)**(int **)(pcVar33 + 0x7aac0);
  pppppppiStack_1e0 = pppppppiVar7;
  pppppppiStack_1dc = pppppppiVar6;
  pppppppiStack_1d8 = unaff_s2;
  pcStack_1d4 = pcVar35;
  uVar5 = (**(code **)(pcVar33 + 0x7aa14))();
  pppppppiVar7 = pppppppiVar25;
  if (uVar5 < 2) {
    FUN_000dce8c();
  }
  else {
    pppppppiVar6 = (int *******)(**(code **)(pcStack_1f8 + -0x60fc))();
    pppppppiVar22 = (int *******)0x0;
    iVar3 = xdupmbstowcs(&pppppppiStack_1f0,0,pppppppiVar25);
    unaff_s2 = pppppppiStack_1f0;
    if (iVar3 == -1) {
      FUN_000dce8c();
    }
    else {
      iVar24 = 0;
      iVar23 = 0;
      iVar3 = 0;
      do {
        if (pppppppiStack_1f0 == (int *******)0x0) goto LAB_000ddc04;
        if (pppppppiStack_1f0[iVar3] == (int ******)0x0) goto LAB_000ddbf8;
        iVar17 = iVar3;
        iVar12 = iVar3 + 1;
        if (pppppppiStack_1f0[iVar3] == (int ******)0x5c) {
          iVar17 = iVar3 + 1;
          iVar12 = iVar3 + 2;
        }
        iVar3 = iVar12;
        iVar23 = iVar23 + 1;
        *(int *******)((int)pppppppiStack_1f0 + iVar24) = pppppppiStack_1f0[iVar17];
        iVar24 = iVar24 + 4;
      } while (pppppppiStack_1f0[iVar17] != (int ******)0x0);
      if (pppppppiStack_1f0 != (int *******)0x0) {
LAB_000ddbf8:
        pppppppiStack_1f0[iVar23] = (int ******)0x0;
      }
LAB_000ddc04:
      uStack_1ec = 0;
      uStack_1e8 = 0;
      pppppppiVar22 = (int *******)&pppppppiStack_1f0;
      (**(code **)(pcStack_1f8 + -0x5f9c))(pppppppiVar25,pppppppiVar22,pppppppiVar6);
      pppppppiVar25 = (int *******)((int)pppppppiVar25 + (int)pppppppiVar6);
      *(undefined1 *)pppppppiVar25 = 0;
      pppppppiVar7 = pppppppiStack_1f0;
      (**(code **)(pcStack_1f8 + -0x5f94))();
    }
  }
  if (pppppppiStack_1e4 == (int *******)**(int **)(pcStack_1f8 + -0x5fb4)) {
    return (int *******)**(int **)(pcStack_1f8 + -0x5fb4);
  }
  pcVar33 = *(code **)(pcStack_1f8 + -0x6004);
  pcVar35 = glob_pattern_p;
  (*pcVar33)();
  pcStack_220 = pcVar33 + 0x808a8;
  pppppppiStack_214 = (int *******)**(undefined4 **)(pcVar33 + 0x7a8f4);
  pppppppiStack_210 = pppppppiVar25;
  pcStack_20c = pcVar35;
  iVar3 = (**(code **)(pcVar33 + 0x7a848))();
  if (iVar3 == 1) {
    pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);
  }
  else {
    pppppppiVar22 = (int *******)0x0;
    pppppppiVar27 = pppppppiVar7;
    iVar3 = xdupmbstowcs(&pppppppiStack_218);
    if (iVar3 == -1) {
      pppppppiVar25 = (int *******)FUN_000dccf0(pppppppiVar7);
      pppppppiVar7 = pppppppiVar27;
    }
    else {
      pppppppiVar22 = (int *******)(*(int *)(pcStack_220 + -0x7f90) + -0x305c);
      while( true ) {
        ppppppiVar21 = *pppppppiStack_218;
        pppppppiStack_218 = pppppppiStack_218 + 1;
        if (ppppppiVar21 == (int ******)0x0) break;
        uVar5 = (int)ppppppiVar21 - 0x21;
        if (uVar5 < 0x3d) {
                    /* WARNING: Could not recover jumptable at 0x000ddd94. Too many branches */
                    /* WARNING: Treating indirect jump as call */
          pppppppiVar7 = (int *******)(*(pcStack_220 + (int)pppppppiVar22[uVar5]))();
          return pppppppiVar7;
        }
      }
      pppppppiVar25 = (int *******)0x0;
      (**(code **)(pcStack_220 + -0x5f94))();
      pppppppiVar7 = pppppppiStack_218;
    }
  }
  if (pppppppiStack_214 == (int *******)**(undefined4 **)(pcStack_220 + -0x5fb4)) {
    return pppppppiVar25;
  }
  pcVar33 = *(code **)(pcStack_220 + -0x6004);
  pcVar35 = glob_vector;
  pppppppiVar27 = pppppppiStack_214;
  (*pcVar33)();
  pcStack_348 = pcVar33 + 0x80714;
  puVar34 = auStack_358;
  puVar8 = auStack_358;
  pcStack_25c = (char *)**(undefined4 **)(pcVar33 + 0x7a760);
  __quote = (int *******)0x0;
  pppppppiVar28 = unaff_s5;
  pppppppiStack_304 = pppppppiVar22;
  pppppppiStack_258 = pppppppiVar25;
  pppppppiStack_254 = pppppppiVar6;
  pppppppiStack_250 = unaff_s2;
  pppppppiStack_24c = unaff_s3;
  pppppppiStack_248 = unaff_s4;
  pppppppiStack_244 = unaff_s5;
  pppppppiStack_240 = unaff_s6;
  pppppppiStack_23c = pppppppiVar4;
  ppppppiStack_238 = unaff_s8;
  pcStack_234 = pcVar35;
  if ((pppppppiVar27 == (int *******)0x0) ||
     (pppppppiVar28 = (int *******)0x0, *(char *)pppppppiVar27 == '\0')) {
    __quote = (int *******)0x0;
    iVar3 = MASKED(pppppppiVar22);
    if (iVar3 < 0) {
      pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
      pcVar33 = pcStack_348;
      goto LAB_000de914;
    }
    puVar34 = auStack_360;
    pppppppiVar25 = &ppppppiStack_350;
    ppppppiStack_350 = (int ******)0x0;
    puVar8 = (undefined1 *)(**(code **)(pcStack_348 + -0x60a4))(1);
    bVar1 = puVar8 == (undefined1 *)0x0;
    if (bVar1) {
      uStack_30c = 1;
      pppppppiVar25 = (int *******)0x0;
    }
    else {
      puStack_34c = puVar8;
      *puVar8 = 0;
      uStack_30c = 0;
    }
    uStack_30c = (uint)bVar1;
    pppppppiVar28 = (int *******)(uint)!bVar1;
    pcVar33 = pcStack_348;
    puVar8 = auStack_360;
    if (pppppppiVar27 != (int *******)0x0) {
      unaff_s2 = (int *******)0x0;
      if (*(char *)pppppppiVar27 == '\0') goto LAB_000ddf00;
      iStack_314 = 1;
      puVar34 = auStack_360;
      goto LAB_000ddf3c;
    }
LAB_000ddefc:
    puVar34 = puVar8;
    unaff_s2 = (int *******)0x0;
    goto LAB_000ddf00;
  }
  iStack_314 = 0;
  uStack_30c = 0;
  pppppppiVar25 = (int *******)0x0;
LAB_000ddf3c:
  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar27);
  pcVar33 = pcStack_348;
  puVar8 = puVar34;
  if (iStack_314 != 0) goto LAB_000ddefc;
  iVar23 = glob_pattern_p((char *)pppppppiVar27,(int)__quote);
  if (iVar23 == 0) {
    __quote = (int *******)0x0;
    iVar23 = MASKED(pppppppiStack_304);
    if (-1 < iVar23) {
      pppppppiVar7 = (int *******)(**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);
      pppppppiVar6 = (int *******)
                     (**(code **)(pcStack_348 + -0x60a4))
                               ((undefined1 *)((int)pppppppiVar7 + iVar3 + 2));
      iVar3 = (**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
      if (pppppppiVar6 == (int *******)0x0) {
        if (iVar3 == 0) {
          uStack_30c = 1;
          pcVar33 = pcStack_348;
        }
        else {
          (**(code **)(pcStack_348 + -0x5f94))(iVar3);
          uStack_30c = 1;
          pcVar33 = pcStack_348;
        }
      }
      else if (iVar3 == 0) {
        __quote = pppppppiVar27;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
        uStack_30c = 1;
        pcVar33 = pcStack_348;
      }
      else {
        (**(code **)(pcStack_348 + -0x6074))(iVar3);
        FUN_000ddacc(iVar3);
        (**(code **)(pcStack_348 + -0x6074))(pppppppiVar6,pppppppiStack_304);
        *(undefined1 *)((int)pppppppiVar6 + (int)pppppppiVar7) = 0x2f;
        (**(code **)(pcStack_348 + -0x6074))
                  ((undefined1 *)((int)pppppppiVar6 + (int)((int)pppppppiVar7 + 1)),iVar3);
        __quote = pppppppiVar6;
        iVar23 = (**(code **)(pcStack_348 + -0x6278))(3,pppppppiVar6,auStack_300);
        if (iVar23 < 0) {
          (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
          (**(code **)(pcStack_348 + -0x5f94))(iVar3);
          unaff_s2 = (int *******)0x0;
          pcVar33 = pcStack_348;
          goto LAB_000ddf00;
        }
        (**(code **)(pcStack_348 + -0x5f94))();
        pcVar33 = pcStack_348;
        pppppppiVar25 = (int *******)(puVar34 + 8);
        *pppppppiVar25 = (int ******)0x0;
        *(int *)(puVar34 + 0xc) = iVar3;
        pppppppiVar28 = (int *******)0x1;
        puVar8 = puVar34 + -8;
      }
      goto LAB_000ddefc;
    }
    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
    pcVar33 = pcStack_348;
  }
  else {
    iStack_308 = (**(code **)(pcStack_348 + -0x6288))();
    if (iStack_308 != 0) {
      uStack_320 = 1;
      if (**(int **)(pcStack_348 + -0x70d8) != 0) {
        uStack_320 = 5;
      }
      piVar15 = *(int **)(pcStack_348 + -0x7bf8);
      if (**(int **)(pcStack_348 + -0x70e4) != 0) {
        uStack_320 = uStack_320 | 0x10;
        piVar15 = *(int **)(pcStack_348 + -0x7bf8);
      }
      if (*piVar15 != 0) {
        uStack_320 = uStack_320 | 0x20;
      }
      uStack_330 = (uint)pppppppiVar7 & 0x210;
      uVar5 = (int)pppppppiVar7 >> 2 & 4;
      uStack_33c = (uint)pppppppiVar7 & 0x100;
      uStack_338 = uVar5 | 8;
      if (uStack_33c == 0) {
        uStack_338 = uVar5;
      }
      unaff_s2 = (int *******)0x0;
      pcStack_31c = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x3104);
      pcStack_334 = (code *)(*(int *)(pcStack_348 + -0x6990) + -0x29e8);
      uStack_328 = *(undefined4 *)(pcStack_348 + -0x6990);
      pppppppiVar6 = pppppppiVar25;
LAB_000de028:
      unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
LAB_000de02c:
      do {
        pppppppiVar4 = *(int ********)(pcStack_348 + -0x7cfc);
        do {
          if (*unaff_s6 != (int ******)0x0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          if (*pppppppiVar4 != (int ******)0x0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          iVar3 = (**(code **)(pcStack_348 + -0x6964))(2);
          if (iVar3 != 0) {
            uStack_30c = 1;
            goto LAB_000de200;
          }
          piVar15 = (int *)(**(code **)(pcStack_348 + -0x6214))(iStack_308);
          if (piVar15 == (int *)0x0) goto LAB_000de200;
        } while (*piVar15 == 0 && piVar15[1] == 0);
        uVar5 = (**(code **)(pcStack_348 + -0x6060))();
        if (1 < uVar5) {
          __quote = (int *******)((int)piVar15 + 0x13);
          iVar3 = FUN_000dd23c(pppppppiVar27,__quote,pppppppiVar7);
          if (iVar3 != 0) goto LAB_000de028;
        }
        pppppppiVar25 = (int *******)((int)piVar15 + 0x13);
        __quote = pppppppiVar25;
        iVar3 = (*pcStack_31c)(pppppppiVar27,pppppppiVar25,pppppppiVar7);
        if (iVar3 != 0) goto LAB_000de028;
        if (((uint)pppppppiVar7 & 0x18) == 0) {
LAB_000de13c:
          if (((uint)pppppppiVar7 & 0x10) == 0) {
            if (((uint)pppppppiVar7 & 8) != 0) {
              (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
            }
LAB_000de658:
            uVar9 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
            __quote = (int *******)fnx_fromfs(pppppppiVar25,uVar9);
            iVar3 = strmatch(pppppppiVar27,__quote,uStack_320);
            if (iVar3 == 1) goto LAB_000de028;
            if (iStack_314 < 100000) {
              unaff_s6 = (int *******)(puVar34 + 8);
              iStack_314 = iStack_314 + 8;
              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
              puVar34 = puVar34 + -8;
            }
            else {
              unaff_s6 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
              if (unaff_s2 == (int *******)0x0) {
                unaff_s2 = unaff_s6;
              }
              iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiVar25);
              pppppppiVar4 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(iVar3 + 1);
              if (unaff_s6 == (int *******)0x0) {
                if (pppppppiVar4 == (int *******)0x0) {
                  uStack_30c = 1;
                }
                else {
                  (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar4);
                  uStack_30c = 1;
                }
                goto LAB_000de200;
              }
            }
            pcVar33 = pcStack_348;
            if (pppppppiVar4 == (int *******)0x0) {
              (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);
              uStack_30c = 1;
              pppppppiVar4 = (int *******)0x0;
              goto LAB_000de200;
            }
            *unaff_s6 = (int ******)pppppppiVar6;
            unaff_s6[1] = (int ******)pppppppiVar4;
            iVar3 = (**(code **)(pcVar33 + -0x60fc))(pppppppiVar25);
            (**(code **)(pcStack_348 + -0x5f88))(pppppppiVar4,pppppppiVar25,iVar3 + 1);
            pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
            __quote = pppppppiVar25;
            pppppppiVar6 = unaff_s6;
            goto LAB_000de028;
          }
          if (iStack_32c == 0) {
            __quote = pppppppiStack_324;
            unaff_s6 = (int *******)
                       glob_vector(pppppppiVar27,pppppppiStack_324,(uint)pppppppiVar7 & 0xfffffdff);
            pppppppiStack_340 = unaff_s6;
            if (unaff_s6 != (int *******)0x0) {
              if (*unaff_s6 != (int ******)0x0) {
                iStack_318 = iStack_32c;
                pppppppiStack_310 = (int *******)0x0;
                pppppppiVar4 = (int *******)0x0;
                goto LAB_000de4c4;
              }
              if (unaff_s6 != *(int ********)(pcStack_348 + -0x7174)) {
                (**(code **)(pcStack_348 + -0x5f94))(unaff_s6);
              }
            }
            goto LAB_000de180;
          }
        }
        else {
          pppppppiStack_324 = (int *******)sh_makepath(pppppppiStack_304,pppppppiVar25,uStack_338);
          __quote = pppppppiVar7;
          iStack_32c = (*pcStack_334)(pppppppiStack_324);
          if (-1 < iStack_32c) goto LAB_000de13c;
          if (((uint)pppppppiVar7 & 8) != 0) {
            (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
            unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
            goto LAB_000de02c;
          }
          if (((uint)pppppppiVar7 & 0x10) == 0) goto LAB_000de658;
        }
        __quote = (int *******)0x0;
        if ((iStack_32c != -2) || (iVar3 = (*pcStack_334)(pppppppiStack_324), iVar3 != 0))
        goto LAB_000de180;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
        unaff_s6 = *(int ********)(pcStack_348 + -0x7cf8);
      } while( true );
    }
    pppppppiVar6 = *(int ********)(pcStack_348 + -0x7174);
    pcVar33 = pcStack_348;
  }
  goto LAB_000de914;
code_r0x000dd9a4:
  (**(code **)(puStack_1c0 + -0x6074))(pppppppiVar7,iStack_1b0);
  if (unaff_s6 != (int *******)0x2f) {
    *(undefined1 *)((int)pppppppiVar7 + (int)pppppppiVar4) = 0x2f;
  }
  (**(code **)(puStack_1c0 + -0x6074))((int)pppppppiVar7 + iStack_1a8);
  if (uStack_1a4 != 0) {
    pppppppiVar25 = (int *******)*pppppppiStack_1b4;
    iVar3 = (**(code **)(puStack_1c0 + -0x6258))(3,pppppppiVar25,unaff_s8);
    pppppppiVar6 = pppppppiStack_1b4;
    if ((iVar3 == 0) && ((uStack_180 & 0xf000) == 0x4000)) {
      ppppppiVar21 = *pppppppiStack_1b4;
      iVar3 = (**(code **)(puStack_1c0 + -0x60fc))(ppppppiVar21);
      pppppppiVar7 = (int *******)((int)ppppppiVar21 + iVar3);
      *(undefined1 *)pppppppiVar7 = 0x2f;
      *(undefined1 *)((int)*pppppppiVar6 + iVar3 + 1) = 0;
    }
  }
  unaff_s3 = (int *******)((int)unaff_s3 + 1);
  iVar3 = (int)unaff_s3 * 4;
  pppppppiVar6 = (int *******)*unaff_s4;
  unaff_s2 = unaff_s2 + 1;
  unaff_s4 = unaff_s4 + 1;
  pppppppiVar22 = pppppppiVar25;
  unaff_s5 = pppppppiVar27;
  if (pppppppiVar6 == (int *******)0x0) goto LAB_000dda68;
  goto LAB_000dd968;
LAB_000de4c4:
  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
  if (pppppppiVar25 != (int *******)0x0) goto code_r0x000de4dc;
  if (pppppppiStack_310 != (int *******)0x0) {
    do {
      pppppppiVar25 = (int *******)*pppppppiStack_310;
      (**(code **)(pcStack_348 + -0x5f94))();
      pppppppiStack_310 = pppppppiVar25;
    } while (pppppppiVar25 != (int *******)0x0);
    pppppppiStack_310 = (int *******)0x0;
  }
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
  uStack_30c = 1;
  goto LAB_000de200;
code_r0x000de4dc:
  if (pppppppiVar4 == (int *******)0x0) {
    pppppppiVar4 = pppppppiVar25;
  }
  *pppppppiVar25 = (int ******)pppppppiStack_310;
  pppppppiVar25[1] = *unaff_s6;
  iStack_318 = iStack_318 + 1;
  unaff_s6 = unaff_s6 + 1;
  pppppppiStack_310 = pppppppiVar25;
  if (*unaff_s6 == (int ******)0x0) goto code_r0x000de510;
  goto LAB_000de4c4;
LAB_000df004:
  puVar31 = puVar31 + 1;
  pcVar29 = (char *)*puVar31;
  piVar15 = *(int **)(puVar8 + -0x30);
  if (pcVar29 == (char *)0x0) {
LAB_000df34c:
    if (*piVar15 != 0) {
      pcVar33 = *(code **)(iVar23 + -0x5f94);
      do {
        piVar15 = piVar15 + 1;
        (*pcVar33)();
        iVar23 = *(int *)(puVar8 + -0x50);
        pcVar33 = *(code **)(iVar23 + -0x5f94);
      } while (*piVar15 != 0);
    }
    (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));
    return pppppppiVar7;
  }
  goto LAB_000df010;
code_r0x000de510:
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_340);
  if (iStack_318 != 0) {
    if (unaff_s2 == (int *******)0x0) {
      unaff_s2 = pppppppiVar4;
    }
    *pppppppiVar4 = (int ******)pppppppiVar6;
    pppppppiVar28 = (int *******)((int)pppppppiVar28 + iStack_318);
    pppppppiVar6 = pppppppiVar25;
  }
LAB_000de180:
  pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
  if (unaff_s2 == (int *******)0x0) {
    unaff_s2 = pppppppiVar25;
  }
  iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_324);
  unaff_s6 = (int *******)(iVar3 + 1);
  ppppppiVar21 = (int ******)(**(code **)(pcStack_348 + -0x60a4))(unaff_s6);
  pppppppiVar22 = pppppppiStack_324;
  if (pppppppiVar25 == (int *******)0x0) {
    if (ppppppiVar21 != (int ******)0x0) {
      (**(code **)(pcStack_348 + -0x5f94))(ppppppiVar21);
    }
  }
  else {
    if (ppppppiVar21 != (int ******)0x0) {
      *pppppppiVar25 = (int ******)pppppppiVar6;
      pppppppiVar25[1] = ppppppiVar21;
      __quote = pppppppiStack_324;
      (**(code **)(pcStack_348 + -0x5f88))(ppppppiVar21,pppppppiStack_324,unaff_s6);
      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);
      pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
      pppppppiVar6 = pppppppiVar25;
      goto LAB_000de028;
    }
    (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);
  }
  (**(code **)(pcStack_348 + -0x5f94))(pppppppiStack_324);
  uStack_30c = 1;
LAB_000de200:
  (**(code **)(pcStack_348 + -0x6284))(iStack_308);
  pppppppiVar25 = pppppppiVar6;
  pcVar33 = pcStack_348;
  if (uStack_330 == 0x210) {
    iVar3 = (**(code **)(pcStack_348 + -0x60fc))(pppppppiStack_304);
    pppppppiVar7 = (int *******)(iVar3 + 1);
    pppppppiVar27 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(pppppppiVar7);
    pppppppiVar25 = (int *******)(**(code **)(pcStack_348 + -0x60a4))(8);
    if (pppppppiVar25 == (int *******)0x0) {
      pppppppiVar25 = pppppppiVar6;
      pcVar33 = pcStack_348;
      if (pppppppiVar27 != (int *******)0x0) {
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar27);
        pcVar33 = pcStack_348;
      }
    }
    else {
      if (pppppppiVar27 != (int *******)0x0) {
        pppppppiVar25[1] = (int ******)pppppppiVar27;
        *pppppppiVar25 = (int ******)pppppppiVar6;
        if (uStack_33c == 0) {
          __quote = pppppppiStack_304;
          (**(code **)(pcStack_348 + -0x5fac))(pppppppiVar27,pppppppiStack_304,pppppppiVar7);
        }
        else {
          *(undefined1 *)pppppppiVar27 = 0;
        }
        pppppppiVar28 = (int *******)((int)pppppppiVar28 + 1);
        pcVar33 = pcStack_348;
        goto LAB_000ddf00;
      }
      (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar25);
      pppppppiVar25 = pppppppiVar6;
      pcVar33 = pcStack_348;
    }
  }
  else {
LAB_000ddf00:
    if (uStack_30c == 0) {
      pppppppiVar27 = (int *******)(((int)pppppppiVar28 + 1) * 4);
      pppppppiVar6 = (int *******)(**(code **)(pcVar33 + -0x60a4))(pppppppiVar27);
      pcVar33 = pcStack_348;
      if (pppppppiVar6 != (int *******)0x0) {
        if (pppppppiVar28 != (int *******)0x0) {
          __quote = (int *******)((int)(pppppppiVar27 + -1) + (int)pppppppiVar6);
          pppppppiVar22 = pppppppiVar6;
          pppppppiVar27 = pppppppiVar25;
          do {
            *pppppppiVar22 = pppppppiVar27[1];
            pppppppiVar22 = pppppppiVar22 + 1;
            pppppppiVar27 = (int *******)*pppppppiVar27;
          } while (__quote != pppppppiVar22);
        }
        pppppppiVar27 = pppppppiVar6 + (int)pppppppiVar28 + 1;
        pppppppiVar27[-1] = (int ******)0x0;
        puVar8 = puVar34;
        pppppppiVar22 = pppppppiVar25;
        if (unaff_s2 != (int *******)0x0) {
          while (pcVar33 = pcStack_348, pppppppiVar22 != (int *******)0x0) {
            pppppppiVar25 = pppppppiVar22;
            if (pppppppiVar22 == unaff_s2) {
              (**(code **)(pcStack_348 + -0x5f94))(unaff_s2);
              pcVar33 = pcStack_348;
              break;
            }
            pppppppiVar27 = (int *******)*pppppppiVar22;
            (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar22);
            pppppppiVar22 = pppppppiVar27;
          }
        }
        goto LAB_000de914;
      }
    }
  }
  pppppppiVar6 = pppppppiVar25;
  puVar8 = puVar34;
  if (pppppppiVar25 == (int *******)0x0) {
    pppppppiVar6 = (int *******)0x0;
  }
  else {
    do {
      if (unaff_s2 == (int *******)0x0) {
        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);
        pppppppiVar6 = (int *******)*pppppppiVar6;
      }
      else {
        if (pppppppiVar6 == unaff_s2) {
          unaff_s2 = (int *******)0x0;
        }
        (**(code **)(pcVar33 + -0x5f94))(pppppppiVar6[1]);
        pppppppiVar25 = (int *******)*pppppppiVar6;
        (**(code **)(pcStack_348 + -0x5f94))(pppppppiVar6);
        pppppppiVar6 = pppppppiVar25;
      }
      pcVar33 = pcStack_348;
    } while (pppppppiVar6 != (int *******)0x0);
  }
LAB_000de914:
  if (pcStack_25c == (char *)**(undefined4 **)(pcVar33 + -0x5fb4)) {
    return pppppppiVar6;
  }
  pcVar33 = *(code **)(pcVar33 + -0x6004);
  pcVar35 = glob_filename;
  pcVar29 = pcStack_25c;
  (*pcVar33)();
  *(code **)(puVar8 + -4) = pcVar35;
  *(undefined1 **)(puVar8 + -8) = auStack_358;
  *(int ********)(puVar8 + -0xc) = pppppppiVar4;
  *(int ********)(puVar8 + -0x10) = unaff_s6;
  *(int ********)(puVar8 + -0x14) = pppppppiVar28;
  *(int ********)(puVar8 + -0x18) = pppppppiVar7;
  *(int ********)(puVar8 + -0x1c) = pppppppiVar27;
  *(int ********)(puVar8 + -0x20) = unaff_s2;
  *(int ********)(puVar8 + -0x24) = pppppppiVar6;
  *(int ********)(puVar8 + -0x28) = pppppppiVar25;
  *(code **)(puVar8 + -0x50) = pcVar33 + 0x7fb4c;
  pppppppiVar7 = (int *******)(**(code **)(pcVar33 + 0x79aa8))(4);
  iVar3 = *(int *)(puVar8 + -0x50);
  if (pppppppiVar7 == (int *******)0x0) {
    return (int *******)0x0;
  }
  *pppppppiVar7 = (int ******)0x0;
  iVar3 = (**(code **)(iVar3 + -0x61d4))(pcVar29,0x2f);
  iVar23 = *(int *)(puVar8 + -0x50);
  if (iVar3 == 0) {
LAB_000deb88:
    iVar3 = 0;
    ppppppiVar21 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);
LAB_000deb94:
    if (*pcVar29 == '\0') {
      pppppppiVar7 = (int *******)(**(code **)(iVar23 + -0x6098))(pppppppiVar7,8);
      iVar17 = *(int *)(puVar8 + -0x50);
      if (pppppppiVar7 == (int *******)0x0) {
        if (iVar3 == 0) {
          return (int *******)0x0;
        }
LAB_000df3a4:
        (**(code **)(iVar17 + -0x5f94))(ppppppiVar21);
        return (int *******)0x0;
      }
      uVar5 = 0;
LAB_000df634:
      iVar24 = uVar5 + 1;
LAB_000df638:
      ppppppiVar16 = (int ******)(**(code **)(iVar17 + -0x60a4))(iVar24);
      iVar23 = *(int *)(puVar8 + -0x50);
      *pppppppiVar7 = ppppppiVar16;
      if (ppppppiVar16 != (int ******)0x0) {
        (**(code **)(iVar23 + -0x5fac))(ppppppiVar16,ppppppiVar21,iVar24);
        if (iVar3 == 0) {
          pppppppiVar7[1] = (int ******)0x0;
          return pppppppiVar7;
        }
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
        pppppppiVar7[1] = (int ******)0x0;
        return pppppppiVar7;
      }
LAB_000df2ac:
      (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);
      iVar23 = *(int *)(puVar8 + -0x50);
      if ((iVar3 == 0) || (ppppppiVar21 == (int ******)0x0)) {
        piVar15 = *(int **)(iVar23 + -0x7cfc);
      }
      else {
        (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
        iVar23 = *(int *)(puVar8 + -0x50);
        piVar15 = *(int **)(iVar23 + -0x7cfc);
      }
LAB_000df2c8:
      if (*piVar15 == 0) {
        piVar15 = *(int **)(iVar23 + -0x7cf8);
      }
      else {
        (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));
        iVar23 = *(int *)(puVar8 + -0x50);
        piVar15 = *(int **)(iVar23 + -0x7cf8);
      }
      if (*piVar15 == 0) {
        pcVar33 = *(code **)(iVar23 + -0x7d20);
      }
      else {
        (**(code **)(iVar23 + -0x7cf4))();
        pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);
      }
      (*pcVar33)();
      return (int *******)0x0;
    }
    (**(code **)(iVar23 + -0x5f94))();
    iVar23 = *(int *)(puVar8 + -0x50);
    uVar30 = (uint)__quote & 0xfffffffe | 0x100;
    uVar14 = uVar30;
    if (((uint)__quote & 0x400) == 0) {
      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
    }
    else if (*pcVar29 == '*') {
      uVar5 = 0;
LAB_000df42c:
      ppppppiVar16 = ppppppiVar21;
      if ((pcVar29[1] == '*') && (pcVar29[2] == '\0')) {
        uVar14 = uVar30 | 0x210;
        if (uVar5 == 0) {
          if (((uint)__quote & 0x10) == 0) {
            uVar14 = uVar30 & 0xfffffdff | 0x10;
          }
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
        }
      }
      else {
        uVar14 = uVar30;
        if (uVar5 == 0) {
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
        }
      }
    }
    else {
      ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x5e18);
    }
LAB_000debcc:
    pppppppiVar7 = (int *******)glob_vector(pcVar29,ppppppiVar16,uVar14);
    iVar23 = *(int *)(puVar8 + -0x50);
    if (pppppppiVar7 != (int *******)0x0) {
LAB_000debec:
      if (pppppppiVar7 != *(int ********)(iVar23 + -0x7174)) {
        ppppppiVar16 = ppppppiVar21;
        if ((uVar14 & 0x10) != 0) {
          ppppppiVar16 = (int ******)(*(int *)(iVar23 + -0x7f90) + -0x47a0);
        }
        pppppppiVar7 = (int *******)FUN_000dd6dc(ppppppiVar16,pppppppiVar7,__quote);
        if (iVar3 == 0) {
          return pppppppiVar7;
        }
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
        return pppppppiVar7;
      }
    }
    if (iVar3 == 0) {
      piVar15 = *(int **)(iVar23 + -0x7cfc);
      goto LAB_000df4b0;
    }
  }
  else {
    if (**(int **)(iVar23 + -0x7bf8) != 0) {
      iVar3 = glob_dirscan(pcVar29,0x2f);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (iVar3 == 0) goto LAB_000deb88;
    }
    iVar24 = iVar3 - (int)pcVar29;
    uVar5 = iVar24 + 1;
    ppppppiVar21 = (int ******)(**(code **)(iVar23 + -0x60a4))(iVar24 + 2);
    if (ppppppiVar21 == (int ******)0x0) {
      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
      return (int *******)0x0;
    }
    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5fac))(ppppppiVar21,pcVar29,uVar5);
    iVar23 = *(int *)(puVar8 + -0x50);
    *(char *)((int)ppppppiVar21 + uVar5) = '\0';
    pcVar26 = (char *)(iVar3 + 1);
    if (uVar5 == 0) {
      iVar3 = 1;
      pcVar29 = pcVar26;
      goto LAB_000deb94;
    }
    iVar23 = glob_pattern_p((char *)ppppppiVar21,(int)pcVar29);
    if (iVar23 == 1) {
      uVar14 = (uint)__quote & 0xfffffffe;
      *(uint *)(puVar8 + -0x44) = (uint)__quote & 0x400;
      ppppppiVar16 = ppppppiVar21;
      if (((uint)__quote & 0x400) == 0) {
        *(undefined4 *)(puVar8 + -0x48) = *(undefined4 *)(puVar8 + -0x44);
      }
      else {
        if (*(char *)ppppppiVar21 == '*') {
          if (*(char *)((int)ppppppiVar21 + 1) == '*') {
            ppppppiVar10 = ppppppiVar21;
            if ((*(char *)((int)ppppppiVar21 + 2) == '/') ||
               (*(char *)((int)ppppppiVar21 + 2) == '\0')) {
              do {
                ppppppiVar19 = ppppppiVar10;
                ppppppiVar10 = ppppppiVar19;
                if (*(char *)((int)ppppppiVar19 + 1) != '*') break;
                if (*(char *)((int)ppppppiVar19 + 2) == '/') {
                  ppppppiVar10 = (int ******)((int)ppppppiVar19 + 3);
                  cVar2 = *(char *)((int)ppppppiVar19 + 3);
                  while (cVar2 == '/') {
                    ppppppiVar10 = (int ******)((int)ppppppiVar10 + 1);
                    cVar2 = *(char *)ppppppiVar10;
                  }
                  ppppppiVar16 = ppppppiVar19;
                  if (cVar2 == '\0') break;
                }
                else if (*(char *)((int)ppppppiVar19 + 2) != '\0') {
                  cVar2 = *(char *)ppppppiVar19;
                  goto LAB_000dedb8;
                }
                ppppppiVar16 = ppppppiVar19;
              } while (*(char *)ppppppiVar10 == '*');
              cVar2 = *(char *)ppppppiVar10;
LAB_000dedb8:
              *(int *)(puVar8 + -0x40) = (int)cVar2;
              *(uint *)(puVar8 + -0x48) = (uint)(cVar2 == 0);
              uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar16);
              uVar14 = uVar14 | 0x210;
              if (*(int *)(puVar8 + -0x40) == 0) goto LAB_000dee6c;
            }
            else {
              *(undefined4 *)(puVar8 + -0x48) = 0;
            }
          }
          else {
            *(undefined4 *)(puVar8 + -0x48) = 0;
          }
        }
        else {
          *(undefined4 *)(puVar8 + -0x48) = 0;
        }
        uVar20 = uVar5;
        uVar30 = uVar5;
        if (3 < (int)uVar5) {
          if (((*(char *)((int)ppppppiVar16 + (uVar5 - 1)) != '/') ||
              (*(char *)((int)ppppppiVar16 + (uVar5 - 2)) != '*')) ||
             (*(char *)((int)ppppppiVar16 + (uVar5 - 3)) != '*')) goto LAB_000dee6c;
          pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 6));
          while ((uVar18 = uVar30, uVar30 = uVar18, pcVar29[2] == '/' &&
                 (uVar30 = uVar18 - 3, uVar20 = uVar18, 3 < (int)uVar30))) {
            if ((pcVar29[1] != '*') || (cVar2 = *pcVar29, pcVar29 = pcVar29 + -3, cVar2 != '*'))
            break;
          }
        }
        bVar1 = uVar30 != uVar5;
        uVar5 = uVar20;
        if ((((bVar1) && (4 < uVar20)) && (*(char *)(iVar3 + 1) == '*')) &&
           ((*(char *)(iVar3 + 2) == '*' && (*(char *)(iVar3 + 3) == '\0')))) {
          uVar5 = uVar20 - 3;
        }
      }
LAB_000dee6c:
      pcVar29 = (char *)((int)ppppppiVar16 + (uVar5 - 1));
      if (*pcVar29 == '/') {
        *pcVar29 = '\0';
      }
      iVar24 = glob_filename(ppppppiVar16,uVar14 | 0x800);
      *(int *)(puVar8 + -0x30) = iVar24;
      (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(ppppppiVar21);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (iVar24 == 0) {
LAB_000df274:
        iVar3 = 1;
        ppppppiVar21 = *pppppppiVar7;
        pppppppiVar4 = pppppppiVar7;
        while (ppppppiVar21 != (int ******)0x0) {
          pppppppiVar4 = pppppppiVar4 + 1;
          (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
          iVar23 = *(int *)(puVar8 + -0x50);
          ppppppiVar21 = *pppppppiVar4;
        }
        goto LAB_000df2ac;
      }
      if (iVar24 == *(int *)(iVar23 + -0x7174)) {
        (**(code **)(iVar23 + -0x5f94))(pppppppiVar7);
        return *(int ********)(puVar8 + -0x30);
      }
      pcVar29 = (char *)**(undefined4 **)(puVar8 + -0x30);
      if (pcVar29 == (char *)0x0) {
        (**(code **)(iVar23 + -0x5f94))(*(undefined4 **)(puVar8 + -0x30));
        (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
        return *(int ********)(*(int *)(puVar8 + -0x50) + -0x7174);
      }
      puVar31 = *(undefined4 **)(puVar8 + -0x30);
      if (*(int *)(puVar8 + -0x48) != 0) {
        if (*(char *)(iVar3 + 1) != '*') {
          iVar24 = *(int *)(iVar23 + -0x7f90);
          goto LAB_000def94;
        }
        puVar31 = *(undefined4 **)(puVar8 + -0x30);
        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {
          (**(code **)(iVar23 + -0x5f94))(*(undefined4 *)(puVar8 + -0x30));
          iVar23 = *(int *)(puVar8 + -0x50);
          iVar3 = *(int *)(puVar8 + -0x48);
          ppppppiVar21 = (int ******)0x0;
          pcVar29 = pcVar26;
          goto LAB_000deb94;
        }
      }
      iVar24 = *(int *)(iVar23 + -0x7f90);
LAB_000def94:
      iVar17 = 1;
      *(int *)(puVar8 + -0x2c) = iVar24 + -0x5e18;
      *(undefined4 *)(puVar8 + -0x40) = *(undefined4 *)(iVar23 + -0x6960);
      *(int *)(puVar8 + -0x34) = *(int *)(iVar23 + -0x6990) + -0x2924;
LAB_000df010:
      uVar5 = (uint)__quote & 0xfffffdee;
      if ((*(int *)(puVar8 + -0x44) == 0) || (*(char *)(iVar3 + 1) != '*')) {
        if ((*pcVar29 == '\0') && (*(char *)(iVar3 + 1) != '\0')) goto LAB_000defd0;
      }
      else {
        if ((*(char *)(iVar3 + 2) == '*') && (*(char *)(iVar3 + 3) == '\0')) {
          uVar5 = uVar5 | 0x210;
        }
        if (*pcVar29 == '\0') {
LAB_000defd0:
          uVar5 = uVar5 | 0x100;
          pcVar29 = *(char **)(puVar8 + -0x2c);
        }
      }
      piVar15 = (int *)(**(code **)(puVar8 + -0x40))(pcVar26,pcVar29,uVar5);
      iVar23 = *(int *)(puVar8 + -0x50);
      if (piVar15 == (int *)0x0) goto LAB_000df26c;
      if (piVar15 == *(int **)(iVar23 + -0x7174)) goto LAB_000df004;
      *(uint *)(puVar8 + -0x38) = uVar5 & 0x10;
      if (((((uVar5 & 0x10) == 0) || (*(char *)(iVar3 + 1) != '*')) || (*(char *)(iVar3 + 2) != '*')
          ) || ((*(char *)(iVar3 + 3) != '\0' && (*(char *)(iVar3 + 3) != '/')))) {
        piVar11 = (int *)(**(code **)(puVar8 + -0x34))(*puVar31,piVar15,__quote);
        iVar23 = *(int *)(puVar8 + -0x50);
        *(undefined4 *)(puVar8 + -0x3c) = 0;
LAB_000df0a0:
        iVar24 = 0;
        if (*piVar11 != 0) {
LAB_000df0ac:
          iVar24 = 0;
          piVar13 = piVar11;
          do {
            piVar13 = piVar13 + 1;
            iVar24 = iVar24 + 1;
          } while (*piVar13 != 0);
        }
      }
      else {
        *(uint *)(puVar8 + -0x3c) = uVar5 & 0x100;
        piVar11 = piVar15;
        if ((uVar5 & 0x100) == 0) goto LAB_000df0a0;
        *(uint *)(puVar8 + -0x3c) = (uint)__quote & 0x100;
        if (((uint)__quote & 0x100) != 0) {
          *(undefined4 *)(puVar8 + -0x3c) = 0;
          goto LAB_000df0a0;
        }
        if ((char *)*piVar15 != (char *)0x0) {
          piVar13 = piVar15;
          if (*(char *)*piVar15 == '\0') {
            do {
              *(int *)(puVar8 + -0x3c) = *(int *)(puVar8 + -0x3c) + 1;
              pcVar29 = (char *)piVar13[1];
              if (pcVar29 == (char *)0x0) {
                *piVar15 = piVar15[*(int *)(puVar8 + -0x3c)];
                *(undefined4 *)(puVar8 + -0x3c) = 1;
                goto LAB_000df0a0;
              }
              piVar13 = piVar13 + 1;
            } while (*pcVar29 == '\0');
            iVar24 = *(int *)(puVar8 + -0x3c);
            piVar13 = piVar15 + iVar24;
            do {
              iVar12 = *piVar13;
              piVar13[-iVar24] = iVar12;
              piVar13 = piVar13 + 1;
            } while (iVar12 != 0);
            *(undefined4 *)(puVar8 + -0x3c) = 1;
            goto LAB_000df0a0;
          }
          goto LAB_000df0ac;
        }
        iVar24 = 0;
      }
      iVar24 = (**(code **)(iVar23 + -0x6098))(pppppppiVar7,(iVar17 + iVar24) * 4);
      iVar23 = *(int *)(puVar8 + -0x50);
      *(int *)(puVar8 + -0x48) = iVar24;
      if (iVar24 == 0) {
        pcVar33 = *(code **)(iVar23 + -0x5f94);
        iVar3 = *piVar11;
        piVar15 = piVar11;
        while (iVar3 != 0) {
          piVar15 = piVar15 + 1;
          (*pcVar33)();
          iVar23 = *(int *)(puVar8 + -0x50);
          pcVar33 = *(code **)(iVar23 + -0x5f94);
          iVar3 = *piVar15;
        }
        (**(code **)(iVar23 + -0x5f94))(piVar11);
        iVar23 = *(int *)(puVar8 + -0x50);
LAB_000df26c:
        piVar15 = *(int **)(iVar23 + -0x7cfc);
        if (pppppppiVar7 == (int *******)0x0) goto LAB_000df2c8;
        goto LAB_000df274;
      }
      iVar24 = *piVar11;
      if (iVar24 != 0) {
        iVar12 = *(int *)(puVar8 + -0x48) + iVar17 * 4;
        piVar13 = piVar11;
        do {
          piVar13 = piVar13 + 1;
          iVar17 = iVar17 + 1;
          *(int *)(iVar12 + -4) = iVar24;
          iVar24 = *piVar13;
          iVar12 = iVar12 + 4;
        } while (iVar24 != 0);
      }
      *(undefined4 *)(*(int *)(puVar8 + -0x48) + (iVar17 + 0x3fffffff) * 4) = 0;
      if (piVar15 == piVar11) {
        iVar24 = *(int *)(puVar8 + -0x3c);
        if (*(int *)(puVar8 + -0x38) != 0) {
          if (*(char *)(iVar3 + 1) != '*') goto LAB_000df14c;
          iVar24 = *(int *)(puVar8 + -0x3c);
          if (*(char *)(iVar3 + 2) == '*') {
            if (*(char *)(iVar3 + 3) != '\0') goto LAB_000df14c;
            (**(code **)(iVar23 + -0x5f94))(piVar11);
            iVar23 = *(int *)(puVar8 + -0x50);
            iVar24 = *(int *)(puVar8 + -0x3c);
          }
        }
      }
      else {
        (**(code **)(iVar23 + -0x5f94))(piVar11);
        iVar23 = *(int *)(puVar8 + -0x50);
LAB_000df14c:
        iVar24 = *(int *)(puVar8 + -0x3c);
      }
      pppppppiVar7 = *(int ********)(puVar8 + -0x48);
      if (iVar24 == 0) goto LAB_000df004;
      piVar15 = *(int **)(puVar8 + -0x30);
      goto LAB_000df34c;
    }
    if (*(char *)(iVar3 + 1) == '\0') {
      pppppppiVar7 = (int *******)(**(code **)(*(int *)(puVar8 + -0x50) + -0x6098))(pppppppiVar7,8);
      iVar17 = *(int *)(puVar8 + -0x50);
      if (pppppppiVar7 == (int *******)0x0) goto LAB_000df3a4;
      if (uVar5 == 0) {
        iVar3 = 1;
        goto LAB_000df634;
      }
      iVar3 = 1;
      if (iVar23 == 2) {
        if (((uint)__quote & 0x800) == 0) {
          iVar3 = 1;
        }
        else {
          FUN_000ddacc(ppppppiVar21);
          uVar5 = (**(code **)(*(int *)(puVar8 + -0x50) + -0x60fc))(ppppppiVar21);
          iVar17 = *(int *)(puVar8 + -0x50);
          iVar3 = 1;
        }
        goto LAB_000df634;
      }
      iVar24 = iVar24 + 2;
      goto LAB_000df638;
    }
    FUN_000ddacc(ppppppiVar21);
    (**(code **)(*(int *)(puVar8 + -0x50) + -0x5f94))(pppppppiVar7);
    iVar23 = *(int *)(puVar8 + -0x50);
    uVar30 = (uint)__quote & 0xfffffffe;
    uVar14 = uVar30;
    if (((uint)__quote & 0x400) != 0) {
      if (*(char *)(iVar3 + 1) == '*') {
        iVar3 = 1;
        pcVar29 = pcVar26;
        goto LAB_000df42c;
      }
      iVar3 = 1;
      ppppppiVar16 = ppppppiVar21;
      pcVar29 = pcVar26;
      goto LAB_000debcc;
    }
    pppppppiVar7 = (int *******)glob_vector(pcVar26,ppppppiVar21,uVar30);
    iVar23 = *(int *)(puVar8 + -0x50);
    if (pppppppiVar7 != (int *******)0x0) {
      iVar3 = 1;
      goto LAB_000debec;
    }
  }
  (**(code **)(iVar23 + -0x5f94))(ppppppiVar21);
  iVar23 = *(int *)(puVar8 + -0x50);
  piVar15 = *(int **)(iVar23 + -0x7cfc);
LAB_000df4b0:
  if (*piVar15 == 0) {
    piVar15 = *(int **)(iVar23 + -0x7cf8);
  }
  else {
    (**(code **)(iVar23 + -0x7ce8))(**(undefined4 **)(iVar23 + -0x7cfc));
    iVar23 = *(int *)(puVar8 + -0x50);
    piVar15 = *(int **)(iVar23 + -0x7cf8);
  }
  if (*piVar15 == 0) {
    pcVar33 = *(code **)(iVar23 + -0x7d20);
  }
  else {
    (**(code **)(iVar23 + -0x7cf4))();
    pcVar33 = *(code **)(*(int *)(puVar8 + -0x50) + -0x7d20);
  }
  (*pcVar33)();
  return pppppppiVar7;
}

