
int restorecon_private(char *path,_Bool local)

{
  char *pcVar1;
  int iVar2;
  security_context_t ****pppppcVar3;
  security_context_t ****pppppcVar4;
  char *pcVar5;
  char *pcVar6;
  int iVar7;
  int iVar8;
  FTS *sp;
  FTSENT *pFVar9;
  int *piVar10;
  undefined4 *puVar11;
  undefined4 uVar12;
  undefined3 in_register_00000014;
  security_context_t ****pppppcVar13;
  char *pcVar14;
  undefined4 *in_a3;
  security_context_t ****unaff_s1;
  int unaff_s2;
  undefined4 uVar15;
  int unaff_s3;
  undefined *puVar16;
  code *pcVar17;
  code *pcVar18;
  char *pcStack_14c;
  undefined4 uStack_148;
  char *pcStack_144;
  int iStack_140;
  int iStack_13c;
  int iStack_138;
  char *pcStack_134;
  undefined4 uStack_10c;
  undefined4 uStack_108;
  undefined4 uStack_104;
  security_context_t ***ppppcStack_100;
  char *pcStack_fc;
  security_context_t ***ppppcStack_f4;
  security_context_t ***ppppcStack_f0;
  int iStack_ec;
  int iStack_e8;
  code *pcStack_e4;
  char *scon;
  char *tcon;
  stat sb;
  
  pcVar1 = *(char **)PTR___stack_chk_guard_000486a0;
  scon = (char *)0x0;
  tcon = (char *)0x0;
  if (CONCAT31(in_register_00000014,local) == 0) {
    pppppcVar13 = (security_context_t ****)0x20000;
    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();
    pppppcVar3 = unaff_s1;
    if (unaff_s1 == (security_context_t ****)0xffffffff) {
      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();
      unaff_s3 = 0;
      if (*piVar10 == 0x5a) {
        pppppcVar13 = (security_context_t ****)path;
        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);
        if (-1 < iVar2) goto LAB_0001e9d0;
        unaff_s3 = 0;
        unaff_s2 = 0;
      }
      else {
        unaff_s2 = 0;
      }
      goto LAB_0001eb5c;
    }
    pppppcVar13 = unaff_s1;
    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);
    unaff_s3 = 0;
    if (iVar2 < 0) {
      unaff_s2 = 0;
      pppppcVar3 = (security_context_t ****)0xffffffff;
LAB_0001eb48:
      (*(code *)PTR_close_00048480)(unaff_s1);
    }
    else {
LAB_0001e9d0:
      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);
      if (iVar2 < 0) {
        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);
        if (*piVar10 == 2) {
          *piVar10 = 0x3d;
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
        else {
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
LAB_0001eb3c:
        pppppcVar13 = (security_context_t ****)sb.st_mode;
        if (unaff_s1 != (security_context_t ****)0xffffffff) {
          pppppcVar3 = (security_context_t ****)0xffffffff;
          goto LAB_0001eb48;
        }
      }
      else {
        unaff_s2 = (*(code *)PTR_context_new_0004868c)();
        if (unaff_s2 == 0) {
          unaff_s3 = 0;
          goto LAB_0001eb3c;
        }
        pppppcVar13 = (security_context_t ****)&tcon;
        if (unaff_s1 != (security_context_t ****)0xffffffff) {
          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);
          if (iVar2 < 0) {
            unaff_s3 = 0;
            pppppcVar3 = (security_context_t ****)0xffffffff;
          }
          else {
            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);
            if (unaff_s3 == 0) {
              pppppcVar3 = (security_context_t ****)0xffffffff;
            }
            else {
              pppppcVar13 = (security_context_t ****)
                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);
              pppppcVar4 = pppppcVar13;
              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;
              pppppcVar3 = (security_context_t ****)0xffffffff;
            }
          }
          goto LAB_0001eb48;
        }
        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);
        if (iVar2 < 0) {
          unaff_s3 = 0;
        }
        else {
          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);
          if ((unaff_s3 != 0) &&
             (pppppcVar4 = (security_context_t ****)
                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),
             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {
LAB_0001ea64:
            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);
            sb.st_mode = (__mode_t)pppppcVar4;
            if ((iVar2 != 0) ||
               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)
               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))
            goto LAB_0001eb3c;
            if (unaff_s1 != (security_context_t ****)0xffffffff) {
              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);
              goto LAB_0001eb48;
            }
            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);
            pppppcVar3 = unaff_s1;
          }
        }
      }
    }
LAB_0001eb5c:
    (*(code *)PTR_context_free_000485d0)(unaff_s2);
    (*(code *)PTR_context_free_000485d0)(unaff_s3);
    (*(code *)PTR_freecon_000484d8)(scon);
    (*(code *)PTR_freecon_000484d8)(tcon);
  }
  else {
    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);
    pppppcVar13 = (security_context_t ****)tcon;
    if (iVar2 < 0) {
      pppppcVar3 = (security_context_t ****)0xffffffff;
    }
    else if (tcon == (char *)0x0) {
      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);
      *puVar11 = 0x3d;
      pppppcVar3 = (security_context_t ****)0xffffffff;
    }
    else {
      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();
      (*(code *)PTR_freecon_000484d8)(tcon);
    }
  }
  if (pcVar1 == *(char **)PTR___stack_chk_guard_000486a0) {
    return (int)pppppcVar3;
  }
  pcVar18 = defaultcon;
  puVar16 = PTR___stack_chk_fail_00048664;
  (*(code *)PTR___stack_chk_fail_00048664)();
  pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0);
  uStack_10c = 0;
  uStack_108 = 0;
  ppppcStack_f4 = (security_context_t ***)pppppcVar3;
  ppppcStack_f0 = (security_context_t ***)unaff_s1;
  iStack_ec = unaff_s2;
  iStack_e8 = unaff_s3;
  pcStack_e4 = pcVar18;
  if (*pcVar1 == '/') {
    pcVar5 = (char *)0x0;
    pcVar6 = pcVar1;
  }
  else {
    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);
    pcVar6 = pcVar5;
    if (pcVar5 == (char *)0x0) {
      (**(code **)(puVar16 + 0x298ac))();
      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);
                    /* WARNING: Subroutine does not return */
      quotearg_style(shell_escape_always_quoting_style,pcVar1);
    }
  }
  pcVar1 = (char *)&uStack_10c;
  pppppcVar3 = pppppcVar13;
  iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6);
  if (iVar2 < 0) {
    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();
    if (*piVar10 == 2) {
      *piVar10 = 0x3d;
      iVar2 = 0;
      iVar7 = 0;
      iVar8 = -1;
    }
    else {
      iVar2 = 0;
      iVar7 = 0;
      iVar8 = -1;
    }
  }
  else {
    uStack_104 = 0;
    ppppcStack_100 = (security_context_t ***)0x0;
    pcVar6 = dir_name(pcVar6);
    if (pcVar6 != (char *)0x0) {
      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);
      pppppcVar3 = &ppppcStack_100;
      if (((-1 < iVar2) &&
          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&
         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {
        in_a3 = &uStack_108;
        pppppcVar3 = (security_context_t ****)ppppcStack_100;
        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);
        (**(code **)(puVar16 + 0x299e8))(pcVar6);
        (**(code **)(puVar16 + 0x29818))(uStack_104);
        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);
        if (iVar2 < 0) {
          iVar2 = 0;
          iVar7 = 0;
          iVar8 = -1;
        }
        else {
          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);
          if (iVar7 == 0) {
            iVar8 = -1;
            iVar2 = 0;
          }
          else {
            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);
            if (iVar2 == 0) {
              iVar8 = -1;
            }
            else {
              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);
              if (pppppcVar3 == (security_context_t ****)0x0) {
                iVar8 = -1;
              }
              else {
                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);
                if (iVar8 == 0) {
                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);
                  if (iVar8 == 0) {
                    iVar8 = -1;
                  }
                  else {
                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);
                  }
                }
                else {
                  iVar8 = -1;
                }
              }
            }
          }
        }
        goto LAB_0001eec0;
      }
    }
    (**(code **)(puVar16 + 0x299e8))(pcVar6);
    (**(code **)(puVar16 + 0x29818))(uStack_104);
    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);
    iVar2 = 0;
    iVar7 = 0;
    iVar8 = -1;
  }
LAB_0001eec0:
  (**(code **)(puVar16 + 0x29910))(iVar7);
  (**(code **)(puVar16 + 0x29910))(iVar2);
  (**(code **)(puVar16 + 0x29818))(uStack_10c);
  (**(code **)(puVar16 + 0x29818))(uStack_108);
  (**(code **)(puVar16 + 0x299e8))(pcVar5);
  if (pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)) {
    return iVar8;
  }
  pcVar18 = *(code **)(puVar16 + 0x299a4);
  pcVar6 = pcStack_fc;
  (*pcVar18)();
  pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8);
  pcVar14 = pcVar1;
  pcStack_14c = pcVar6;
  iStack_140 = iVar2;
  iStack_13c = iVar7;
  iStack_138 = iVar8;
  pcStack_134 = pcVar5;
  if (*pcVar6 == '/') {
    pcVar5 = (char *)0x0;
  }
  else if (pcVar1 == (char *)0x0) {
    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);
    pcVar5 = pcStack_14c;
    if (pcStack_14c == (char *)0x0) {
      (**(code **)(pcVar18 + 0x294c4))();
      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);
                    /* WARNING: Subroutine does not return */
      quotearg_style(shell_escape_always_quoting_style,pcVar6);
    }
  }
  else {
    pcVar5 = (char *)0x0;
  }
  uStack_148 = 0;
  if (pppppcVar3 == (security_context_t ****)0x0) {
    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));
    (**(code **)(pcVar18 + 0x29600))(pcVar5);
    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);
  }
  else {
    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);
    iVar2 = *(int *)(pcVar18 + 0x291b0);
    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {
      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);
      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));
    }
    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();
    pcVar6 = (char *)*piVar10;
    if (pcVar6 != (char *)0x0) {
      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);
      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);
      pppppcVar3 = (security_context_t ****)0x0;
      pcVar1 = pcVar6;
    }
    iVar2 = fts_close(sp);
    pcVar14 = (char *)0x5;
    if (iVar2 != 0) {
      pcVar1 = (char *)*piVar10;
      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);
      (**(code **)(pcVar18 + 0x29558))(0);
      pppppcVar3 = (security_context_t ****)0x0;
    }
    (**(code **)(pcVar18 + 0x29600))(pcVar5);
  }
  if (pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)) {
    pcVar17 = *(code **)(pcVar18 + 0x295bc);
    pcVar6 = pcStack_144;
    (*pcVar17)();
    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));
    if (iVar2 == -2) {
      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();
      uVar12 = *puVar11;
      pcVar1 = quote(pcVar6);
      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);
    }
    else if (iVar2 == -1) {
      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();
      uVar15 = *puVar11;
      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);
      pcVar1 = quote(pcVar14);
      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);
    }
    return iVar2;
  }
  return (int)pppppcVar3;
}



undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)

{
  int iVar1;
  undefined4 ****ppppuVar2;
  undefined4 ****ppppuVar3;
  char *pcVar4;
  int iVar5;
  undefined4 *puVar6;
  int iVar7;
  undefined4 ****ppppuVar8;
  uint *puVar9;
  undefined4 *puVar10;
  int *piVar11;
  undefined4 uVar12;
  undefined4 uVar13;
  char *pcVar14;
  undefined4 *puVar15;
  char *pcVar16;
  undefined4 ****unaff_s1;
  int unaff_s2;
  undefined4 uVar17;
  int unaff_s3;
  undefined *puVar18;
  code *pcVar19;
  code *pcVar20;
  char *pcStack_14c;
  undefined4 uStack_148;
  int iStack_144;
  int iStack_140;
  int iStack_13c;
  undefined4 ***pppuStack_138;
  char *pcStack_134;
  undefined4 uStack_10c;
  undefined4 uStack_108;
  undefined4 uStack_104;
  undefined4 ***pppuStack_100;
  char *pcStack_fc;
  undefined4 ***pppuStack_f4;
  undefined4 ***pppuStack_f0;
  int iStack_ec;
  int iStack_e8;
  code *pcStack_e4;
  undefined4 local_c8;
  undefined4 ***local_c4;
  undefined1 auStack_c0 [24];
  undefined4 ***local_a8;
  char *local_1c;
  
  local_1c = *(char **)PTR___stack_chk_guard_000486a0;
  local_c8 = 0;
  local_c4 = (undefined4 ****)0x0;
  if (param_2 == 0) {
    ppppuVar8 = (undefined4 ****)0x20000;
    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();
    ppppuVar2 = unaff_s1;
    if (unaff_s1 == (undefined4 ****)0xffffffff) {
      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();
      unaff_s3 = 0;
      if (*piVar11 == 0x5a) {
        ppppuVar8 = param_1;
        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);
        if (-1 < iVar1) goto LAB_0001e9d0;
        unaff_s3 = 0;
        unaff_s2 = 0;
      }
      else {
        unaff_s2 = 0;
      }
      goto LAB_0001eb5c;
    }
    ppppuVar8 = unaff_s1;
    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);
    unaff_s3 = 0;
    if (iVar1 < 0) {
      unaff_s2 = 0;
      ppppuVar2 = (undefined4 ****)0xffffffff;
LAB_0001eb48:
      (*(code *)PTR_close_00048480)(unaff_s1);
    }
    else {
LAB_0001e9d0:
      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);
      if (iVar1 < 0) {
        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);
        if (*piVar11 == 2) {
          *piVar11 = 0x3d;
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
        else {
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
LAB_0001eb3c:
        ppppuVar8 = (undefined4 ****)local_a8;
        if (unaff_s1 != (undefined4 ****)0xffffffff) {
          ppppuVar2 = (undefined4 ****)0xffffffff;
          goto LAB_0001eb48;
        }
      }
      else {
        unaff_s2 = (*(code *)PTR_context_new_0004868c)();
        if (unaff_s2 == 0) {
          unaff_s3 = 0;
          goto LAB_0001eb3c;
        }
        ppppuVar8 = &local_c4;
        if (unaff_s1 != (undefined4 ****)0xffffffff) {
          iVar1 = rpl_fgetfilecon(unaff_s1);
          if (iVar1 < 0) {
            unaff_s3 = 0;
            ppppuVar2 = (undefined4 ****)0xffffffff;
          }
          else {
            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);
            if (unaff_s3 == 0) {
              ppppuVar2 = (undefined4 ****)0xffffffff;
            }
            else {
              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);
              ppppuVar3 = ppppuVar8;
              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;
              ppppuVar2 = (undefined4 ****)0xffffffff;
            }
          }
          goto LAB_0001eb48;
        }
        iVar1 = rpl_lgetfilecon(param_1);
        if (iVar1 < 0) {
          unaff_s3 = 0;
        }
        else {
          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);
          if ((unaff_s3 != 0) &&
             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),
             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {
LAB_0001ea64:
            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);
            local_a8 = ppppuVar3;
            if ((iVar1 != 0) ||
               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),
               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;
            if (unaff_s1 != (undefined4 ****)0xffffffff) {
              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);
              goto LAB_0001eb48;
            }
            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);
            ppppuVar2 = unaff_s1;
          }
        }
      }
    }
LAB_0001eb5c:
    (*(code *)PTR_context_free_000485d0)(unaff_s2);
    (*(code *)PTR_context_free_000485d0)(unaff_s3);
    (*(code *)PTR_freecon_000484d8)(local_c8);
    (*(code *)PTR_freecon_000484d8)(local_c4);
  }
  else {
    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);
    ppppuVar8 = (undefined4 ****)local_c4;
    if (iVar1 < 0) {
      ppppuVar2 = (undefined4 ****)0xffffffff;
    }
    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {
      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);
      *puVar6 = 0x3d;
      ppppuVar2 = (undefined4 ****)0xffffffff;
    }
    else {
      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();
      (*(code *)PTR_freecon_000484d8)(local_c4);
    }
  }
  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {
    return ppppuVar2;
  }
  pcVar20 = defaultcon;
  pcVar14 = local_1c;
  puVar18 = PTR___stack_chk_fail_00048664;
  (*(code *)PTR___stack_chk_fail_00048664)();
  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);
  uStack_10c = 0;
  uStack_108 = 0;
  pppuStack_f4 = ppppuVar2;
  pppuStack_f0 = unaff_s1;
  iStack_ec = unaff_s2;
  iStack_e8 = unaff_s3;
  pcStack_e4 = pcVar20;
  if (*pcVar14 == '/') {
LAB_0001efc4:
    pcVar4 = (char *)0x0;
    pcVar16 = pcVar14;
  }
  else {
    pcVar4 = (char *)canonicalize_filename_mode();
    pcVar16 = pcVar4;
    if (pcVar4 == (char *)0x0) {
      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();
      uVar13 = *puVar6;
      ppppuVar8 = (undefined4 ****)
                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);
      uVar12 = quotearg_style(4,pcVar14);
      pcVar14 = (char *)0x1;
      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);
      goto LAB_0001efc4;
    }
  }
  puVar6 = &uStack_10c;
  ppppuVar2 = ppppuVar8;
  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);
  if (iVar1 < 0) {
    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);
    if (*piVar11 == 2) {
      *piVar11 = 0x3d;
      iVar1 = 0;
      iVar5 = 0;
      ppppuVar8 = (undefined4 ****)0xffffffff;
    }
    else {
      iVar1 = 0;
      iVar5 = 0;
      ppppuVar8 = (undefined4 ****)0xffffffff;
    }
  }
  else {
    uStack_104 = 0;
    pppuStack_100 = (undefined4 ****)0x0;
    iVar1 = dir_name();
    if (iVar1 != 0) {
      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);
      ppppuVar2 = &pppuStack_100;
      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&
         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),
         puVar6 != (undefined4 *)0x0)) {
        ppppuVar2 = (undefined4 ****)pppuStack_100;
        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);
        (**(code **)(puVar18 + 0x299e8))(iVar1);
        (**(code **)(puVar18 + 0x29818))(uStack_104);
        (**(code **)(puVar18 + 0x29818))(pppuStack_100);
        if (iVar5 < 0) {
          iVar1 = 0;
          iVar5 = 0;
          ppppuVar8 = (undefined4 ****)0xffffffff;
        }
        else {
          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);
          if (iVar5 == 0) {
            ppppuVar8 = (undefined4 ****)0xffffffff;
            iVar1 = 0;
          }
          else {
            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);
            if (iVar1 == 0) {
              ppppuVar8 = (undefined4 ****)0xffffffff;
            }
            else {
              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);
              if (ppppuVar2 == (undefined4 ****)0x0) {
                ppppuVar8 = (undefined4 ****)0xffffffff;
              }
              else {
                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);
                if (iVar7 == 0) {
                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);
                  if (iVar7 == 0) {
                    ppppuVar8 = (undefined4 ****)0xffffffff;
                  }
                  else {
                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);
                  }
                }
                else {
                  ppppuVar8 = (undefined4 ****)0xffffffff;
                }
              }
            }
          }
        }
        goto LAB_0001eec0;
      }
    }
    (**(code **)(puVar18 + 0x299e8))(iVar1);
    (**(code **)(puVar18 + 0x29818))(uStack_104);
    (**(code **)(puVar18 + 0x29818))(pppuStack_100);
    iVar1 = 0;
    iVar5 = 0;
    ppppuVar8 = (undefined4 ****)0xffffffff;
  }
LAB_0001eec0:
  (**(code **)(puVar18 + 0x29910))(iVar5);
  (**(code **)(puVar18 + 0x29910))(iVar1);
  (**(code **)(puVar18 + 0x29818))(uStack_10c);
  (**(code **)(puVar18 + 0x29818))(uStack_108);
  (**(code **)(puVar18 + 0x299e8))(pcVar4);
  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {
    return ppppuVar8;
  }
  pcVar20 = *(code **)(puVar18 + 0x299a4);
  pcVar14 = pcStack_fc;
  (*pcVar20)();
  pcVar19 = pcVar20 + 0x31068;
  iStack_144 = **(int **)(pcVar20 + 0x295f8);
  puVar10 = puVar6;
  iStack_140 = iVar1;
  iStack_13c = iVar5;
  pppuStack_138 = ppppuVar8;
  pcStack_134 = pcVar4;
  if (*pcVar14 != '/') {
    puVar15 = puVar6;
    if (puVar6 != (undefined4 *)0x0) {
      pcStack_14c = pcVar14;
      pcVar16 = (char *)0x0;
      goto LAB_0001f108;
    }
    pcStack_14c = (char *)canonicalize_filename_mode();
    pcVar16 = pcStack_14c;
    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;
    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();
    ppppuVar2 = (undefined4 ****)*puVar9;
    puVar10 = (undefined4 *)
              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);
    uVar12 = quotearg_style(4,pcVar14);
    puVar6 = puVar10;
    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);
  }
  puVar15 = puVar6;
  pcStack_14c = pcVar14;
  puVar6 = puVar10;
  pcVar16 = (char *)0x0;
LAB_0001f108:
  uStack_148 = 0;
  if (ppppuVar2 == (undefined4 ****)0x0) {
    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);
    (**(code **)(pcVar20 + 0x29600))(pcVar16);
    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);
  }
  else {
    iVar1 = xfts_open(&pcStack_14c,0x10,0);
    iVar5 = *(int *)(pcVar20 + 0x291b0);
    while (iVar7 = fts_read(iVar1), iVar7 != 0) {
      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));
      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));
    }
    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();
    iVar5 = *piVar11;
    if (iVar5 != 0) {
      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);
      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);
      ppppuVar2 = (undefined4 ****)0x0;
    }
    iVar1 = fts_close(iVar1);
    puVar15 = (undefined4 *)0x5;
    if (iVar1 != 0) {
      iVar1 = *piVar11;
      puVar15 = (undefined4 *)
                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);
      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);
      ppppuVar2 = (undefined4 ****)0x0;
    }
    (**(code **)(pcVar20 + 0x29600))(pcVar16);
  }
  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {
    pcVar20 = *(code **)(pcVar20 + 0x295bc);
    iVar1 = iStack_144;
    (*pcVar20)();
    ppppuVar8 = (undefined4 ****)qcopy_acl();
    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {
      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();
      uVar13 = *puVar6;
      uVar12 = quote(iVar1);
      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)
      ;
    }
    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {
      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();
      uVar17 = *puVar6;
      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);
      uVar13 = quote(puVar15);
      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);
    }
    return ppppuVar8;
  }
  return ppppuVar2;
}


lui gp,0x3
addiu gp,gp,0x1840
addu gp,gp,t9
addiu sp,sp,-0xe0
sw ra,0xdc(sp)
sw s3,0xd8(sp)
sw s2,0xd4(sp)
sw s1,0xd0(sp)
sw s0,0xcc(sp)
sw gp,0x10(sp)
or s0,a0,zero
lw v0,-0x7a70(gp)
lw v0,0x0(v0)
sw v0,0xc4(sp)
sw zero,0x18(sp)
beq a1,zero,0x0001e988
_sw zero,0x1c(sp)
addiu a0,sp,0x1c
lw t9,-0x7c64(gp)
jalr t9
_nop
lw gp,0x10(sp)
bltz v0,0x0001ec80
_lw a1,0x1c(sp)
beq a1,zero,0x0001e968
_or a0,s0,zero
lw t9,-0x7a5c(gp)
jalr t9
_nop
lw gp,0x10(sp)
or s0,v0,zero
lw a0,0x1c(sp)
lw t9,-0x7c38(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x0001ebb0
_or v0,s0,zero
lw t9,-0x7ba4(gp)
jalr t9
_nop
lw gp,0x10(sp)
li v1,0x3d
sw v1,0x0(v0)
b 0x0001ebac
_li s0,-0x1
lui a1,0x2
lw t9,-0x7b70(gp)
jalr t9
_nop
lw gp,0x10(sp)
or s1,v0,zero
li v0,-0x1
beq s1,v0,0x0001eac0
_addiu a2,sp,0x20
or a1,s1,zero
li a0,0x3
lw t9,-0x7ae8(gp)
jalr t9
_nop
lw gp,0x10(sp)
bltz v0,0x0001ec88
_or s3,zero,zero
addiu a2,sp,0x18
lw a1,0x38(sp)
or a0,s0,zero
lw t9,-0x7af8(gp)
jalr t9
_nop
lw gp,0x10(sp)
bltz v0,0x0001eb10
_lw a0,0x18(sp)
lw t9,-0x7a84(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0001ec60
_or s2,v0,zero
li v0,-0x1
beq s1,v0,0x0001ebec
_addiu a1,sp,0x1c
or a0,s1,zero
lw t9,-0x7e60(gp)
bal 0x0002ee7c
_nop
lw gp,0x10(sp)
bltz v0,0x0001ec94
_lw a0,0x1c(sp)
lw t9,-0x7a84(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0001ec68
_or s3,v0,zero
or a0,s2,zero
lw t9,-0x7a48(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0001ec70
_or a1,v0,zero
or a0,s3,zero
lw t9,-0x7ab8(gp)
jalr t9
_nop
lw gp,0x10(sp)
bne v0,zero,0x0001eb3c
_li v0,-0x1
or a0,s3,zero
lw t9,-0x7c74(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0001eb38
_li v1,-0x1
beq s1,v1,0x0001ec44
_or a1,v0,zero
or a0,s1,zero
lw t9,-0x7be8(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x0001eb48
_or s0,v0,zero
lw t9,-0x7ba4(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw v1,0x0(v0)
li v0,0x5a
bne v1,v0,0x0001eca0
_or s3,zero,zero
addiu a2,sp,0x20
or a1,s0,zero
li a0,0x3
lw t9,-0x7c84(gp)
jalr t9
_nop
lw gp,0x10(sp)
bgez v0,0x0001e9d0
_addiu a2,sp,0x18
or s3,zero,zero
b 0x0001eca4
_or s2,zero,zero
lw t9,-0x7ba4(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw a0,0x0(v0)
li v1,0x2
beq a0,v1,0x0001ebdc
_li v1,0x3d
or s3,zero,zero
or s2,zero,zero
li v0,-0x1
beq s1,v0,0x0001eb5c
_or s0,s1,zero
li s0,-0x1
or a0,s1,zero
lw t9,-0x7c90(gp)
jalr t9
_nop
lw gp,0x10(sp)
or a0,s2,zero
lw t9,-0x7b40(gp)
jalr t9
_nop
lw gp,0x10(sp)
or a0,s3,zero
lw t9,-0x7b40(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw a0,0x18(sp)
lw t9,-0x7c38(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw a0,0x1c(sp)
lw t9,-0x7c38(gp)
jalr t9
_nop
lw gp,0x10(sp)
or v0,s0,zero
lw a0,0xc4(sp)
lw v1,-0x7a70(gp)
lw v1,0x0(v1)
bne a0,v1,0x0001ecb4
_lw ra,0xdc(sp)
lw s3,0xd8(sp)
lw s2,0xd4(sp)
lw s1,0xd0(sp)
lw s0,0xcc(sp)
jr ra
_addiu sp,sp,0xe0
sw v1,0x0(v0)
or s3,zero,zero
b 0x0001eb38
_or s2,zero,zero
or a0,s0,zero
lw t9,-0x7f10(gp)
bal 0x0002ee20
_nop
lw gp,0x10(sp)
bltz v0,0x0001ecac
_lw a0,0x1c(sp)
lw t9,-0x7a84(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0001ec78
_or s3,v0,zero
or a0,s2,zero
lw t9,-0x7a48(gp)
jalr t9
_nop
lw gp,0x10(sp)
bne v0,zero,0x0001ea64
_or a1,v0,zero
b 0x0001eb5c
_or s0,s1,zero
or a0,s0,zero
lw t9,-0x7a5c(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x0001eca4
_or s1,v0,zero
b 0x0001eb38
_or s3,v0,zero
b 0x0001eb48
_li s0,-0x1
b 0x0001eb48
_li s0,-0x1
b 0x0001eb5c
_or s0,s1,zero
b 0x0001ebac
_li s0,-0x1
or s2,zero,zero
b 0x0001eb48
_li s0,-0x1
or s3,zero,zero
b 0x0001eb48
_li s0,-0x1
or s2,zero,zero
b 0x0001eb5c
_or s0,s1,zero
b 0x0001eca4
_or s3,zero,zero
lw t9,-0x7aac(gp)
jalr t9
_nop
(translation_unit "undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)\n\n{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}\n\n" (function_definition "undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)\n\n{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" type_identifier (pointer_declarator "**** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "*** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "* FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (function_declarator "FUN_0001e8d0(undefined4 ****param_1,int param_2)" identifier (parameter_list "(undefined4 ****param_1,int param_2)" ( (parameter_declaration "undefined4 ****param_1" type_identifier (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier))))) , (parameter_declaration "int param_2" primitive_type identifier) ))))))) (compound_statement "{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 ****ppppuVar2;" type_identifier (pointer_declarator "****ppppuVar2" * (pointer_declarator "***ppppuVar2" * (pointer_declarator "**ppppuVar2" * (pointer_declarator "*ppppuVar2" * identifier)))) ;) (declaration "undefined4 ****ppppuVar3;" type_identifier (pointer_declarator "****ppppuVar3" * (pointer_declarator "***ppppuVar3" * (pointer_declarator "**ppppuVar3" * (pointer_declarator "*ppppuVar3" * identifier)))) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "undefined4 ****ppppuVar8;" type_identifier (pointer_declarator "****ppppuVar8" * (pointer_declarator "***ppppuVar8" * (pointer_declarator "**ppppuVar8" * (pointer_declarator "*ppppuVar8" * identifier)))) ;) (declaration "uint *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined4 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "undefined4 uVar13;" type_identifier identifier ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined4 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "char *pcVar16;" primitive_type (pointer_declarator "*pcVar16" * identifier) ;) (declaration "undefined4 ****unaff_s1;" type_identifier (pointer_declarator "****unaff_s1" * (pointer_declarator "***unaff_s1" * (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * identifier)))) ;) (declaration "int unaff_s2;" primitive_type identifier ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "char *pcStack_14c;" primitive_type (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "int iStack_144;" primitive_type identifier ;) (declaration "int iStack_140;" primitive_type identifier ;) (declaration "int iStack_13c;" primitive_type identifier ;) (declaration "undefined4 ***pppuStack_138;" type_identifier (pointer_declarator "***pppuStack_138" * (pointer_declarator "**pppuStack_138" * (pointer_declarator "*pppuStack_138" * identifier))) ;) (declaration "char *pcStack_134;" primitive_type (pointer_declarator "*pcStack_134" * identifier) ;) (declaration "undefined4 uStack_10c;" type_identifier identifier ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "undefined4 uStack_104;" type_identifier identifier ;) (declaration "undefined4 ***pppuStack_100;" type_identifier (pointer_declarator "***pppuStack_100" * (pointer_declarator "**pppuStack_100" * (pointer_declarator "*pppuStack_100" * identifier))) ;) (declaration "char *pcStack_fc;" primitive_type (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "undefined4 ***pppuStack_f4;" type_identifier (pointer_declarator "***pppuStack_f4" * (pointer_declarator "**pppuStack_f4" * (pointer_declarator "*pppuStack_f4" * identifier))) ;) (declaration "undefined4 ***pppuStack_f0;" type_identifier (pointer_declarator "***pppuStack_f0" * (pointer_declarator "**pppuStack_f0" * (pointer_declarator "*pppuStack_f0" * identifier))) ;) (declaration "int iStack_ec;" primitive_type identifier ;) (declaration "int iStack_e8;" primitive_type identifier ;) (declaration "code *pcStack_e4;" type_identifier (pointer_declarator "*pcStack_e4" * identifier) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 ***local_c4;" type_identifier (pointer_declarator "***local_c4" * (pointer_declarator "**local_c4" * (pointer_declarator "*local_c4" * identifier))) ;) (declaration "undefined1 auStack_c0 [24];" type_identifier (array_declarator "auStack_c0 [24]" identifier [ number_literal ]) ;) (declaration "undefined4 ***local_a8;" type_identifier (pointer_declarator "***local_a8" * (pointer_declarator "**local_a8" * (pointer_declarator "*local_a8" * identifier))) ;) (declaration "char *local_1c;" primitive_type (pointer_declarator "*local_1c" * identifier) ;) (expression_statement "local_1c = *(char **)PTR___stack_chk_guard_000486a0;" (assignment_expression "local_1c = *(char **)PTR___stack_chk_guard_000486a0" identifier = (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = (undefined4 ****)0x0;" (assignment_expression "local_c4 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (if_statement "if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }" { (expression_statement "ppppuVar8 = (undefined4 ****)0x20000;" (assignment_expression "ppppuVar8 = (undefined4 ****)0x20000" identifier = (cast_expression "(undefined4 ****)0x20000" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)()" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_open64_000485a0)()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_open64_000485a0)()" (parenthesized_expression "(*(code *)PTR_open64_000485a0)" ( (pointer_expression "*(code *)PTR_open64_000485a0" * (cast_expression "(code *)PTR_open64_000485a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" identifier = identifier) ;) (if_statement "if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" if (parenthesized_expression "(unaff_s1 == (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 == (undefined4 ****)0xffffffff" identifier == (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" { (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)()" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }" if (parenthesized_expression "(*piVar11 == 0x5a)" ( (binary_expression "*piVar11 == 0x5a" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }" { (expression_statement "ppppuVar8 = param_1;" (assignment_expression "ppppuVar8 = param_1" identifier = identifier) ;) (expression_statement "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);" (assignment_expression "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" identifier = (call_expression "(*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" (parenthesized_expression "(*(code *)PTR___lxstat64_0004848c)" ( (pointer_expression "*(code *)PTR___lxstat64_0004848c" * (cast_expression "(code *)PTR___lxstat64_0004848c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3,param_1,auStack_c0)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (-1 < iVar1) goto LAB_0001e9d0;" if (parenthesized_expression "(-1 < iVar1)" ( (binary_expression "-1 < iVar1" number_literal < identifier) )) (goto_statement "goto LAB_0001e9d0;" goto statement_identifier ;)) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        unaff_s2 = 0;\n      }" else (compound_statement "{\n        unaff_s2 = 0;\n      }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (goto_statement "goto LAB_0001eb5c;" goto statement_identifier ;) })) (expression_statement "ppppuVar8 = unaff_s1;" (assignment_expression "ppppuVar8 = unaff_s1" identifier = identifier) ;) (expression_statement "iVar1 = (*(code *)PTR___fxstat64_00048628)(3);" (assignment_expression "iVar1 = (*(code *)PTR___fxstat64_00048628)(3)" identifier = (call_expression "(*(code *)PTR___fxstat64_00048628)(3)" (parenthesized_expression "(*(code *)PTR___fxstat64_00048628)" ( (pointer_expression "*(code *)PTR___fxstat64_00048628" * (cast_expression "(code *)PTR___fxstat64_00048628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (labeled_statement "LAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);" statement_identifier : (expression_statement "(*(code *)PTR_close_00048480)(unaff_s1);" (call_expression "(*(code *)PTR_close_00048480)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_close_00048480)" ( (pointer_expression "*(code *)PTR_close_00048480" * (cast_expression "(code *)PTR_close_00048480" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))) ;)) }) (else_clause "else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" else (compound_statement "{\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" { (labeled_statement "LAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" statement_identifier : (expression_statement "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" (assignment_expression "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" identifier = (call_expression "(*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" (parenthesized_expression "(*(code *)PTR_matchpathcon_00048618)" ( (pointer_expression "*(code *)PTR_matchpathcon_00048618" * (cast_expression "(code *)PTR_matchpathcon_00048618" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,local_a8,&local_c8)" ( identifier , identifier , (pointer_expression "&local_c8" & identifier) )))) ;)) (if_statement "if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }" { (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(local_c8)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c8)" ( identifier ))))) ;) (if_statement "if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" if (parenthesized_expression "(*piVar11 == 2)" ( (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" else (compound_statement "{\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;" statement_identifier : (expression_statement "ppppuVar8 = (undefined4 ****)local_a8;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_a8" identifier = (cast_expression "(undefined4 ****)local_a8" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;)) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) }) (else_clause "else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" else (compound_statement "{\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" { (expression_statement "unaff_s2 = (*(code *)PTR_context_new_0004868c)();" (assignment_expression "unaff_s2 = (*(code *)PTR_context_new_0004868c)()" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)()" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" if (parenthesized_expression "(unaff_s2 == 0)" ( (binary_expression "unaff_s2 == 0" identifier == number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;) })) (expression_statement "ppppuVar8 = &local_c4;" (assignment_expression "ppppuVar8 = &local_c4" identifier = (pointer_expression "&local_c4" & identifier)) ;) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" { (expression_statement "iVar1 = rpl_fgetfilecon(unaff_s1);" (assignment_expression "iVar1 = rpl_fgetfilecon(unaff_s1)" identifier = (call_expression "rpl_fgetfilecon(unaff_s1)" identifier (argument_list "(unaff_s1)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" else (compound_statement "{\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier )))) ;) (if_statement "if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" if (parenthesized_expression "(unaff_s3 == 0)" ( (binary_expression "unaff_s3 == 0" identifier == number_literal) )) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" else (compound_statement "{\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (expression_statement "ppppuVar3 = ppppuVar8;" (assignment_expression "ppppuVar3 = ppppuVar8" identifier = identifier) ;) (if_statement "if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;" if (parenthesized_expression "(ppppuVar8 != (undefined4 ****)0x0)" ( (binary_expression "ppppuVar8 != (undefined4 ****)0x0" identifier != (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (goto_statement "goto LAB_0001ea64;" goto statement_identifier ;)) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }))) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "iVar1 = rpl_lgetfilecon(param_1);" (assignment_expression "iVar1 = rpl_lgetfilecon(param_1)" identifier = (call_expression "rpl_lgetfilecon(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" else (compound_statement "{\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier )))) ;) (if_statement "if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" if (parenthesized_expression "((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0))" ( (binary_expression "(unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" (parenthesized_expression "(unaff_s3 != 0)" ( (binary_expression "unaff_s3 != 0" identifier != number_literal) )) && (parenthesized_expression "(ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" ( (comma_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) , (comma_expression "ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = ppppuVar3" identifier = identifier) , (binary_expression "ppppuVar3 != (undefined4 ****)0x0" identifier != (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (compound_statement "{\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" { (labeled_statement "LAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" statement_identifier : (expression_statement "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" (assignment_expression "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3)" identifier = (call_expression "(*(code *)PTR_context_type_set_00048658)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_type_set_00048658)" ( (pointer_expression "*(code *)PTR_context_type_set_00048658" * (cast_expression "(code *)PTR_context_type_set_00048658" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier )))) ;)) (expression_statement "local_a8 = ppppuVar3;" (assignment_expression "local_a8 = ppppuVar3" identifier = identifier) ;) (if_statement "if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;" if (parenthesized_expression "((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0))" ( (binary_expression "(iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) || (parenthesized_expression "(ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" ( (comma_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_str_0004849c)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_str_0004849c)" ( (pointer_expression "*(code *)PTR_context_str_0004849c" * (cast_expression "(code *)PTR_context_str_0004849c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))))) , (comma_expression "local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "local_a8 = ppppuVar3" identifier = identifier) , (binary_expression "ppppuVar8 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;)) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_fsetfilecon_00048528)" ( (pointer_expression "*(code *)PTR_fsetfilecon_00048528" * (cast_expression "(code *)PTR_fsetfilecon_00048528" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))))) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)(param_1)" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" identifier = identifier) ;) })) }))) }))) }))) (labeled_statement "LAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s2);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s3);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c8);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c8)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c8)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier ))) ;) }) (else_clause "else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" else (compound_statement "{\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" { (expression_statement "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);" (assignment_expression "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" identifier = (call_expression "(*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" (parenthesized_expression "(*(code *)PTR_getfscreatecon_000484ac)" ( (pointer_expression "*(code *)PTR_getfscreatecon_000484ac" * (cast_expression "(code *)PTR_getfscreatecon_000484ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_c4)" ( (pointer_expression "&local_c4" & identifier) )))) ;) (expression_statement "ppppuVar8 = (undefined4 ****)local_c4;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_c4" identifier = (cast_expression "(undefined4 ****)local_c4" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (if_statement "if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" else (if_statement "if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" if (parenthesized_expression "((undefined4 ****)local_c4 == (undefined4 ****)0x0)" ( (binary_expression "(undefined4 ****)local_c4 == (undefined4 ****)0x0" (cast_expression "(undefined4 ****)local_c4" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier) == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);" (assignment_expression "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" identifier = (cast_expression "(undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(param_1)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "*puVar6 = 0x3d;" (assignment_expression "*puVar6 = 0x3d" (pointer_expression "*puVar6" * identifier) = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" else (compound_statement "{\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" { (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)()" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier ))) ;) }))))) }))) (if_statement "if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }" if (parenthesized_expression "(local_1c == *(char **)PTR___stack_chk_guard_000486a0)" ( (binary_expression "local_1c == *(char **)PTR___stack_chk_guard_000486a0" identifier == (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return ppppuVar2;\n  }" { (return_statement "return ppppuVar2;" return identifier ;) })) (expression_statement "pcVar20 = defaultcon;" (assignment_expression "pcVar20 = defaultcon" identifier = identifier) ;) (expression_statement "pcVar14 = local_1c;" (assignment_expression "pcVar14 = local_1c" identifier = identifier) ;) (expression_statement "puVar18 = PTR___stack_chk_fail_00048664;" (assignment_expression "puVar18 = PTR___stack_chk_fail_00048664" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00048664)();" (call_expression "(*(code *)PTR___stack_chk_fail_00048664)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00048664)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00048664" * (cast_expression "(code *)PTR___stack_chk_fail_00048664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);" (assignment_expression "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" * (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" * (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e0)" ( (binary_expression "puVar18 + 0x299e0" identifier + number_literal) ))))))) ;) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" identifier = number_literal) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "pppuStack_f4 = ppppuVar2;" (assignment_expression "pppuStack_f4 = ppppuVar2" identifier = identifier) ;) (expression_statement "pppuStack_f0 = unaff_s1;" (assignment_expression "pppuStack_f0 = unaff_s1" identifier = identifier) ;) (expression_statement "iStack_ec = unaff_s2;" (assignment_expression "iStack_ec = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_e8 = unaff_s3;" (assignment_expression "iStack_e8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_e4 = pcVar20;" (assignment_expression "pcStack_e4 = pcVar20" identifier = identifier) ;) (if_statement "if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" if (parenthesized_expression "(*pcVar14 == '/')" ( (binary_expression "*pcVar14 == '/'" (pointer_expression "*pcVar14" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }" { (labeled_statement "LAB_0001efc4:\n    pcVar4 = (char *)0x0;" statement_identifier : (expression_statement "pcVar4 = (char *)0x0;" (assignment_expression "pcVar4 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar16 = pcVar14;" (assignment_expression "pcVar16 = pcVar14" identifier = identifier) ;) }) (else_clause "else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" else (compound_statement "{\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" { (expression_statement "pcVar4 = (char *)canonicalize_filename_mode();" (assignment_expression "pcVar4 = (char *)canonicalize_filename_mode()" identifier = (cast_expression "(char *)canonicalize_filename_mode()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "canonicalize_filename_mode()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pcVar16 = pcVar4;" (assignment_expression "pcVar16 = pcVar4" identifier = identifier) ;) (if_statement "if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" if (parenthesized_expression "(pcVar4 == (char *)0x0)" ( (binary_expression "pcVar4 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))()" identifier = (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x298ac))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x298ac))()" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" ( (pointer_expression "**(code **)(puVar18 + 0x298ac)" * (pointer_expression "*(code **)(puVar18 + 0x298ac)" * (cast_expression "(code **)(puVar18 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298ac)" ( (binary_expression "puVar18 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);" (assignment_expression "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" identifier = (cast_expression "(undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (parenthesized_expression "(**(code **)(puVar18 + 0x299b0))" ( (pointer_expression "**(code **)(puVar18 + 0x299b0)" * (pointer_expression "*(code **)(puVar18 + 0x299b0)" * (cast_expression "(code **)(puVar18 + 0x299b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299b0)" ( (binary_expression "puVar18 + 0x299b0" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(puVar18 + 0x2948c) + 0x5d20" (pointer_expression "*(int *)(puVar18 + 0x2948c)" * (cast_expression "(int *)(puVar18 + 0x2948c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + 0x2948c)" ( (binary_expression "puVar18 + 0x2948c" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" identifier = (call_expression "quotearg_style(4,pcVar14)" identifier (argument_list "(4,pcVar14)" ( number_literal , identifier )))) ;) (expression_statement "pcVar14 = (char *)0x1;" (assignment_expression "pcVar14 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);" (call_expression "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12)" (parenthesized_expression "(**(code **)(puVar18 + 0x29940))" ( (pointer_expression "**(code **)(puVar18 + 0x29940)" * (pointer_expression "*(code **)(puVar18 + 0x29940)" * (cast_expression "(code **)(puVar18 + 0x29940)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29940)" ( (binary_expression "puVar18 + 0x29940" identifier + number_literal) ))))) )) (argument_list "(1,uVar13,ppppuVar8,uVar12)" ( number_literal , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0001efc4;" goto statement_identifier ;) })) }))) (expression_statement "puVar6 = &uStack_10c;" (assignment_expression "puVar6 = &uStack_10c" identifier = (pointer_expression "&uStack_10c" & identifier)) ;) (expression_statement "ppppuVar2 = ppppuVar8;" (assignment_expression "ppppuVar2 = ppppuVar8" identifier = identifier) ;) (expression_statement "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16)" identifier = (call_expression "(**(code **)(puVar18 + 0x29958))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x29958))" ( (pointer_expression "**(code **)(puVar18 + 0x29958)" * (pointer_expression "*(code **)(puVar18 + 0x29958)" * (cast_expression "(code **)(puVar18 + 0x29958)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29958)" ( (binary_expression "puVar18 + 0x29958" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }" { (expression_statement "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" identifier = (cast_expression "(int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x298ac))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" ( (pointer_expression "**(code **)(puVar18 + 0x298ac)" * (pointer_expression "*(code **)(puVar18 + 0x298ac)" * (cast_expression "(code **)(puVar18 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298ac)" ( (binary_expression "puVar18 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))))) ;) (if_statement "if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" if (parenthesized_expression "(*piVar11 == 2)" ( (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" else (compound_statement "{\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }) (else_clause "else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" else (compound_statement "{\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" { (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" identifier = number_literal) ;) (expression_statement "pppuStack_100 = (undefined4 ****)0x0;" (assignment_expression "pppuStack_100 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "iVar1 = dir_name();" (assignment_expression "iVar1 = dir_name()" identifier = (call_expression "dir_name()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" { (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104)" identifier = (call_expression "(**(code **)(puVar18 + 0x29950))(&uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29950))" ( (pointer_expression "**(code **)(puVar18 + 0x29950)" * (pointer_expression "*(code **)(puVar18 + 0x29950)" * (cast_expression "(code **)(puVar18 + 0x29950)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29950)" ( (binary_expression "puVar18 + 0x29950" identifier + number_literal) ))))) )) (argument_list "(&uStack_104)" ( (pointer_expression "&uStack_104" & identifier) )))) ;) (expression_statement "ppppuVar2 = &pppuStack_100;" (assignment_expression "ppppuVar2 = &pppuStack_100" identifier = (pointer_expression "&pppuStack_100" & identifier)) ;) (if_statement "if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" if (parenthesized_expression "(((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0))" ( (binary_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" (parenthesized_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5))" ( (binary_expression "(-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" (parenthesized_expression "(-1 < iVar5)" ( (binary_expression "-1 < iVar5" number_literal < identifier) )) && (parenthesized_expression "(iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" ( (comma_expression "iVar5 = rpl_getfilecon(iVar1), -1 < iVar5" (assignment_expression "iVar5 = rpl_getfilecon(iVar1)" identifier = (call_expression "rpl_getfilecon(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) , (binary_expression "-1 < iVar5" number_literal < identifier)) ))) )) && (parenthesized_expression "(puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" ( (comma_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" identifier = (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" (parenthesized_expression "(**(code **)(puVar18 + 0x297c4))" ( (pointer_expression "**(code **)(puVar18 + 0x297c4)" * (pointer_expression "*(code **)(puVar18 + 0x297c4)" * (cast_expression "(code **)(puVar18 + 0x297c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x297c4)" ( (binary_expression "puVar18 + 0x297c4" identifier + number_literal) ))))) )) (argument_list "(ppppuVar8)" ( identifier ))))) , (binary_expression "puVar6 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" { (expression_statement "ppppuVar2 = (undefined4 ****)pppuStack_100;" (assignment_expression "ppppuVar2 = (undefined4 ****)pppuStack_100" identifier = (cast_expression "(undefined4 ****)pppuStack_100" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" identifier = (call_expression "(**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29830))" ( (pointer_expression "**(code **)(puVar18 + 0x29830)" * (pointer_expression "*(code **)(puVar18 + 0x29830)" * (cast_expression "(code **)(puVar18 + 0x29830)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29830)" ( (binary_expression "puVar18 + 0x29830" identifier + number_literal) ))))) )) (argument_list "(uStack_104,pppuStack_100,puVar6,&uStack_108)" ( identifier , identifier , identifier , (pointer_expression "&uStack_108" & identifier) )))) ;) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(pppuStack_100)" ( identifier ))) ;) (if_statement "if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" if (parenthesized_expression "(iVar5 < 0)" ( (binary_expression "iVar5 < 0" identifier < number_literal) )) (compound_statement "{\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" else (compound_statement "{\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" { (expression_statement "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c)" identifier = (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" ( (pointer_expression "**(code **)(puVar18 + 0x299cc)" * (pointer_expression "*(code **)(puVar18 + 0x299cc)" * (cast_expression "(code **)(puVar18 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299cc)" ( (binary_expression "puVar18 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier )))) ;) (if_statement "if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) }) (else_clause "else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" else (compound_statement "{\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" { (expression_statement "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108)" identifier = (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" ( (pointer_expression "**(code **)(puVar18 + 0x299cc)" * (pointer_expression "*(code **)(puVar18 + 0x299cc)" * (cast_expression "(code **)(puVar18 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299cc)" ( (binary_expression "puVar18 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" else (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);" (assignment_expression "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" identifier = (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x29a08))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29a08))" ( (pointer_expression "**(code **)(puVar18 + 0x29a08)" * (pointer_expression "*(code **)(puVar18 + 0x29a08)" * (cast_expression "(code **)(puVar18 + 0x29a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29a08)" ( (binary_expression "puVar18 + 0x29a08" identifier + number_literal) ))))) )) (argument_list "(iVar5)" ( identifier ))))) ;) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" if (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" ( (binary_expression "ppppuVar2 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" else (compound_statement "{\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" { (expression_statement "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1)" identifier = (call_expression "(**(code **)(puVar18 + 0x29998))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29998))" ( (pointer_expression "**(code **)(puVar18 + 0x29998)" * (pointer_expression "*(code **)(puVar18 + 0x29998)" * (cast_expression "(code **)(puVar18 + 0x29998)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29998)" ( (binary_expression "puVar18 + 0x29998" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier )))) ;) (if_statement "if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }" { (expression_statement "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1)" identifier = (call_expression "(**(code **)(puVar18 + 0x297dc))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x297dc))" ( (pointer_expression "**(code **)(puVar18 + 0x297dc)" * (pointer_expression "*(code **)(puVar18 + 0x297dc)" * (cast_expression "(code **)(puVar18 + 0x297dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x297dc)" ( (binary_expression "puVar18 + 0x297dc" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier )))) ;) (if_statement "if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" else (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" { (expression_statement "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);" (assignment_expression "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" identifier = (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x298e4))(iVar7)" (parenthesized_expression "(**(code **)(puVar18 + 0x298e4))" ( (pointer_expression "**(code **)(puVar18 + 0x298e4)" * (pointer_expression "*(code **)(puVar18 + 0x298e4)" * (cast_expression "(code **)(puVar18 + 0x298e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298e4)" ( (binary_expression "puVar18 + 0x298e4" identifier + number_literal) ))))) )) (argument_list "(iVar7)" ( identifier ))))) ;) }))) }) (else_clause "else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" else (compound_statement "{\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }))) }))) }))) }))) (goto_statement "goto LAB_0001eec0;" goto statement_identifier ;) })) })) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(pppuStack_100)" ( identifier ))) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) (labeled_statement "LAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);" statement_identifier : (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar5);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" ( (pointer_expression "**(code **)(puVar18 + 0x29910)" * (pointer_expression "*(code **)(puVar18 + 0x29910)" * (cast_expression "(code **)(puVar18 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29910)" ( (binary_expression "puVar18 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar5)" ( identifier ))) ;)) (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" ( (pointer_expression "**(code **)(puVar18 + 0x29910)" * (pointer_expression "*(code **)(puVar18 + 0x29910)" * (cast_expression "(code **)(puVar18 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29910)" ( (binary_expression "puVar18 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_10c);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_108);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x299e8))(pcVar4);" (call_expression "(**(code **)(puVar18 + 0x299e8))(pcVar4)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(pcVar4)" ( identifier ))) ;) (if_statement "if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }" if (parenthesized_expression "(pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0))" ( (binary_expression "pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)" identifier == (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" * (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" * (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e0)" ( (binary_expression "puVar18 + 0x299e0" identifier + number_literal) ))))))) )) (compound_statement "{\n    return ppppuVar8;\n  }" { (return_statement "return ppppuVar8;" return identifier ;) })) (expression_statement "pcVar20 = *(code **)(puVar18 + 0x299a4);" (assignment_expression "pcVar20 = *(code **)(puVar18 + 0x299a4)" identifier = (pointer_expression "*(code **)(puVar18 + 0x299a4)" * (cast_expression "(code **)(puVar18 + 0x299a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299a4)" ( (binary_expression "puVar18 + 0x299a4" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = pcStack_fc;" (assignment_expression "pcVar14 = pcStack_fc" identifier = identifier) ;) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar19 = pcVar20 + 0x31068;" (assignment_expression "pcVar19 = pcVar20 + 0x31068" identifier = (binary_expression "pcVar20 + 0x31068" identifier + number_literal)) ;) (expression_statement "iStack_144 = **(int **)(pcVar20 + 0x295f8);" (assignment_expression "iStack_144 = **(int **)(pcVar20 + 0x295f8)" identifier = (pointer_expression "**(int **)(pcVar20 + 0x295f8)" * (pointer_expression "*(int **)(pcVar20 + 0x295f8)" * (cast_expression "(int **)(pcVar20 + 0x295f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295f8)" ( (binary_expression "pcVar20 + 0x295f8" identifier + number_literal) )))))) ;) (expression_statement "puVar10 = puVar6;" (assignment_expression "puVar10 = puVar6" identifier = identifier) ;) (expression_statement "iStack_140 = iVar1;" (assignment_expression "iStack_140 = iVar1" identifier = identifier) ;) (expression_statement "iStack_13c = iVar5;" (assignment_expression "iStack_13c = iVar5" identifier = identifier) ;) (expression_statement "pppuStack_138 = ppppuVar8;" (assignment_expression "pppuStack_138 = ppppuVar8" identifier = identifier) ;) (expression_statement "pcStack_134 = pcVar4;" (assignment_expression "pcStack_134 = pcVar4" identifier = identifier) ;) (if_statement "if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" if (parenthesized_expression "(*pcVar14 != '/')" ( (binary_expression "*pcVar14 != '/'" (pointer_expression "*pcVar14" * identifier) != (char_literal "'/'" ' character ')) )) (compound_statement "{\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" { (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" identifier = identifier) ;) (if_statement "if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" if (parenthesized_expression "(puVar6 != (undefined4 *)0x0)" ( (binary_expression "puVar6 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" { (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" identifier = identifier) ;) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0001f108;" goto statement_identifier ;) })) (expression_statement "pcStack_14c = (char *)canonicalize_filename_mode();" (assignment_expression "pcStack_14c = (char *)canonicalize_filename_mode()" identifier = (cast_expression "(char *)canonicalize_filename_mode()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "canonicalize_filename_mode()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pcVar16 = pcStack_14c;" (assignment_expression "pcVar16 = pcStack_14c" identifier = identifier) ;) (if_statement "if (pcStack_14c != (char *)0x0) goto LAB_0001f108;" if (parenthesized_expression "(pcStack_14c != (char *)0x0)" ( (binary_expression "pcStack_14c != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0001f108;" goto statement_identifier ;)) (expression_statement "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))()" identifier = (cast_expression "(uint *)(**(code **)(pcVar20 + 0x294c4))()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar20 + 0x294c4)" * (pointer_expression "*(code **)(pcVar20 + 0x294c4)" * (cast_expression "(code **)(pcVar20 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x294c4)" ( (binary_expression "pcVar20 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)*puVar9;" (assignment_expression "ppppuVar2 = (undefined4 ****)*puVar9" identifier = (cast_expression "(undefined4 ****)*puVar9" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (pointer_expression "*puVar9" * identifier))) ;) (expression_statement "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);" (assignment_expression "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" identifier = (cast_expression "(undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d20" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" identifier = (call_expression "quotearg_style(4,pcVar14)" identifier (argument_list "(4,pcVar14)" ( number_literal , identifier )))) ;) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(1,ppppuVar2,puVar10,uVar12)" ( number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" identifier = identifier) ;) (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" identifier = identifier) ;) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" identifier = identifier) ;) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0001f108:\n  uStack_148 = 0;" statement_identifier : (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;)) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" if (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" ( (binary_expression "ppppuVar2 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }" { (expression_statement "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);" (assignment_expression "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6)" identifier = (call_expression "FUN_0001e8d0(pcStack_14c,puVar6)" identifier (argument_list "(pcStack_14c,puVar6)" ( identifier , identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" ( (pointer_expression "**(code **)(pcVar20 + 0x29600)" * (pointer_expression "*(code **)(pcVar20 + 0x29600)" * (cast_expression "(code **)(pcVar20 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29600)" ( (binary_expression "pcVar20 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1)" identifier = (cast_expression "(undefined4 ****)(uint)(iVar1 != -1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(uint)(iVar1 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar1 != -1)" ( (binary_expression "iVar1 != -1" identifier != number_literal) ))))) ;) }) (else_clause "else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" else (compound_statement "{\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" { (expression_statement "iVar1 = xfts_open(&pcStack_14c,0x10,0);" (assignment_expression "iVar1 = xfts_open(&pcStack_14c,0x10,0)" identifier = (call_expression "xfts_open(&pcStack_14c,0x10,0)" identifier (argument_list "(&pcStack_14c,0x10,0)" ( (pointer_expression "&pcStack_14c" & identifier) , number_literal , number_literal )))) ;) (expression_statement "iVar5 = *(int *)(pcVar20 + 0x291b0);" (assignment_expression "iVar5 = *(int *)(pcVar20 + 0x291b0)" identifier = (pointer_expression "*(int *)(pcVar20 + 0x291b0)" * (cast_expression "(int *)(pcVar20 + 0x291b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x291b0)" ( (binary_expression "pcVar20 + 0x291b0" identifier + number_literal) ))))) ;) (while_statement "while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" while (parenthesized_expression "(iVar7 = fts_read(iVar1), iVar7 != 0)" ( (comma_expression "iVar7 = fts_read(iVar1), iVar7 != 0" (assignment_expression "iVar7 = fts_read(iVar1)" identifier = (call_expression "fts_read(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )) (compound_statement "{\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" { (expression_statement "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));" (assignment_expression "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" identifier = (call_expression "(*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" (parenthesized_expression "(*(code *)(iVar5 + -0x1730))" ( (pointer_expression "*(code *)(iVar5 + -0x1730)" * (cast_expression "(code *)(iVar5 + -0x1730)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -0x1730)" ( (binary_expression "iVar5 + -0x1730" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar1 + 0x18))" ( (pointer_expression "*(undefined4 *)(iVar1 + 0x18)" * (cast_expression "(undefined4 *)(iVar1 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) )))) )))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));" (assignment_expression "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" identifier = (cast_expression "(undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "((uint)ppppuVar2 & (uint)(iVar7 != -1))" ( (binary_expression "(uint)ppppuVar2 & (uint)(iVar7 != -1)" (cast_expression "(uint)ppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & (call_expression "(uint)(iVar7 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )))) )))) ;) })) (expression_statement "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))()" identifier = (cast_expression "(int *)(**(code **)(pcVar20 + 0x294c4))()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar20 + 0x294c4)" * (pointer_expression "*(code **)(pcVar20 + 0x294c4)" * (cast_expression "(code **)(pcVar20 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x294c4)" ( (binary_expression "pcVar20 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar5 = *piVar11;" (assignment_expression "iVar5 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (if_statement "if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" { (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" identifier = (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d38" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0,iVar5,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) })) (expression_statement "iVar1 = fts_close(iVar1);" (assignment_expression "iVar1 = fts_close(iVar1)" identifier = (call_expression "fts_close(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "puVar15 = (undefined4 *)0x5;" (assignment_expression "puVar15 = (undefined4 *)0x5" identifier = (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" { (expression_statement "iVar1 = *piVar11;" (assignment_expression "iVar1 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);" (assignment_expression "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" identifier = (cast_expression "(undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d48" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0,iVar1,puVar15)" ( number_literal , identifier , identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) })) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" ( (pointer_expression "**(code **)(pcVar20 + 0x29600)" * (pointer_expression "*(code **)(pcVar20 + 0x29600)" * (cast_expression "(code **)(pcVar20 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29600)" ( (binary_expression "pcVar20 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))) ;) }))) (if_statement "if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" if (parenthesized_expression "(iStack_144 != **(int **)(pcVar20 + 0x295f8))" ( (binary_expression "iStack_144 != **(int **)(pcVar20 + 0x295f8)" identifier != (pointer_expression "**(int **)(pcVar20 + 0x295f8)" * (pointer_expression "*(int **)(pcVar20 + 0x295f8)" * (cast_expression "(int **)(pcVar20 + 0x295f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295f8)" ( (binary_expression "pcVar20 + 0x295f8" identifier + number_literal) )))))) )) (compound_statement "{\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" { (expression_statement "pcVar20 = *(code **)(pcVar20 + 0x295bc);" (assignment_expression "pcVar20 = *(code **)(pcVar20 + 0x295bc)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x295bc)" * (cast_expression "(code **)(pcVar20 + 0x295bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295bc)" ( (binary_expression "pcVar20 + 0x295bc" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = iStack_144;" (assignment_expression "iVar1 = iStack_144" identifier = identifier) ;) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppppuVar8 = (undefined4 ****)qcopy_acl();" (assignment_expression "ppppuVar8 = (undefined4 ****)qcopy_acl()" identifier = (cast_expression "(undefined4 ****)qcopy_acl()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "qcopy_acl()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" if (parenthesized_expression "(ppppuVar8 == (undefined4 ****)&SUB_fffffffe)" ( (binary_expression "ppppuVar8 == (undefined4 ****)&SUB_fffffffe" identifier == (cast_expression "(undefined4 ****)&SUB_fffffffe" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (pointer_expression "&SUB_fffffffe" & identifier))) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar20 + 0x291fc)" * (pointer_expression "*(code **)(pcVar20 + 0x291fc)" * (cast_expression "(code **)(pcVar20 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x291fc)" ( (binary_expression "pcVar20 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar12 = quote(iVar1);" (assignment_expression "uVar12 = quote(iVar1)" identifier = (call_expression "quote(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" ( (pointer_expression "**(code **)(pcVar20 + 0x29290)" * (pointer_expression "*(code **)(pcVar20 + 0x29290)" * (cast_expression "(code **)(pcVar20 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29290)" ( (binary_expression "pcVar20 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" ( number_literal , identifier , (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x57f4" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" * (cast_expression "(int *)(pcVar20 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x28ddc)" ( (binary_expression "pcVar20 + 0x28ddc" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) }) (else_clause "else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" else (if_statement "if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" if (parenthesized_expression "(ppppuVar8 == (undefined4 ****)0xffffffff)" ( (binary_expression "ppppuVar8 == (undefined4 ****)0xffffffff" identifier == (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar20 + 0x291fc)" * (pointer_expression "*(code **)(pcVar20 + 0x291fc)" * (cast_expression "(code **)(pcVar20 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x291fc)" ( (binary_expression "pcVar20 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar17 = *puVar6;" (assignment_expression "uVar17 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" identifier = (call_expression "(**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29300))" ( (pointer_expression "**(code **)(pcVar20 + 0x29300)" * (pointer_expression "*(code **)(pcVar20 + 0x29300)" * (cast_expression "(code **)(pcVar20 + 0x29300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29300)" ( (binary_expression "pcVar20 + 0x29300" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x5a30" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" * (cast_expression "(int *)(pcVar20 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x28ddc)" ( (binary_expression "pcVar20 + 0x28ddc" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "uVar13 = quote(puVar15);" (assignment_expression "uVar13 = quote(puVar15)" identifier = (call_expression "quote(puVar15)" identifier (argument_list "(puVar15)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" ( (pointer_expression "**(code **)(pcVar20 + 0x29290)" * (pointer_expression "*(code **)(pcVar20 + 0x29290)" * (cast_expression "(code **)(pcVar20 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29290)" ( (binary_expression "pcVar20 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar17,uVar12,uVar13)" ( number_literal , identifier , identifier , identifier ))) ;) })))) (return_statement "return ppppuVar8;" return identifier ;) })) (return_statement "return ppppuVar2;" return identifier ;) })))
(translation_unit "int restorecon_private(char *path,_Bool local)\n\n{\n  char *pcVar1;\n  int iVar2;\n  security_context_t ****pppppcVar3;\n  security_context_t ****pppppcVar4;\n  char *pcVar5;\n  char *pcVar6;\n  int iVar7;\n  int iVar8;\n  FTS *sp;\n  FTSENT *pFVar9;\n  int *piVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  undefined3 in_register_00000014;\n  security_context_t ****pppppcVar13;\n  char *pcVar14;\n  undefined4 *in_a3;\n  security_context_t ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar15;\n  int unaff_s3;\n  undefined *puVar16;\n  code *pcVar17;\n  code *pcVar18;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  char *pcStack_144;\n  int iStack_140;\n  int iStack_13c;\n  int iStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  security_context_t ***ppppcStack_100;\n  char *pcStack_fc;\n  security_context_t ***ppppcStack_f4;\n  security_context_t ***ppppcStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  char *scon;\n  char *tcon;\n  stat sb;\n  \n  pcVar1 = *(char **)PTR___stack_chk_guard_000486a0;\n  scon = (char *)0x0;\n  tcon = (char *)0x0;\n  if (CONCAT31(in_register_00000014,local) == 0) {\n    pppppcVar13 = (security_context_t ****)0x20000;\n    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();\n    pppppcVar3 = unaff_s1;\n    if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    pppppcVar13 = unaff_s1;\n    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(scon);\n    (*(code *)PTR_freecon_000484d8)(tcon);\n  }\n  else {\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }\n  if (pcVar1 == *(char **)PTR___stack_chk_guard_000486a0) {\n    return (int)pppppcVar3;\n  }\n  pcVar18 = defaultcon;\n  puVar16 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  ppppcStack_f4 = (security_context_t ***)pppppcVar3;\n  ppppcStack_f0 = (security_context_t ***)unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar18;\n  if (*pcVar1 == '/') {\n    pcVar5 = (char *)0x0;\n    pcVar6 = pcVar1;\n  }\n  else {\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }\n  pcVar1 = (char *)&uStack_10c;\n  pppppcVar3 = pppppcVar13;\n  iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6);\n  if (iVar2 < 0) {\n    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();\n    if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar16 + 0x29910))(iVar7);\n  (**(code **)(puVar16 + 0x29910))(iVar2);\n  (**(code **)(puVar16 + 0x29818))(uStack_10c);\n  (**(code **)(puVar16 + 0x29818))(uStack_108);\n  (**(code **)(puVar16 + 0x299e8))(pcVar5);\n  if (pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)) {\n    return iVar8;\n  }\n  pcVar18 = *(code **)(puVar16 + 0x299a4);\n  pcVar6 = pcStack_fc;\n  (*pcVar18)();\n  pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8);\n  pcVar14 = pcVar1;\n  pcStack_14c = pcVar6;\n  iStack_140 = iVar2;\n  iStack_13c = iVar7;\n  iStack_138 = iVar8;\n  pcStack_134 = pcVar5;\n  if (*pcVar6 == '/') {\n    pcVar5 = (char *)0x0;\n  }\n  else if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }\n  uStack_148 = 0;\n  if (pppppcVar3 == (security_context_t ****)0x0) {\n    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);\n  }\n  else {\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }\n  if (pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)) {\n    pcVar17 = *(code **)(pcVar18 + 0x295bc);\n    pcVar6 = pcStack_144;\n    (*pcVar17)();\n    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));\n    if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }\n    return iVar2;\n  }\n  return (int)pppppcVar3;\n}\n\n" (function_definition "int restorecon_private(char *path,_Bool local)\n\n{\n  char *pcVar1;\n  int iVar2;\n  security_context_t ****pppppcVar3;\n  security_context_t ****pppppcVar4;\n  char *pcVar5;\n  char *pcVar6;\n  int iVar7;\n  int iVar8;\n  FTS *sp;\n  FTSENT *pFVar9;\n  int *piVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  undefined3 in_register_00000014;\n  security_context_t ****pppppcVar13;\n  char *pcVar14;\n  undefined4 *in_a3;\n  security_context_t ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar15;\n  int unaff_s3;\n  undefined *puVar16;\n  code *pcVar17;\n  code *pcVar18;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  char *pcStack_144;\n  int iStack_140;\n  int iStack_13c;\n  int iStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  security_context_t ***ppppcStack_100;\n  char *pcStack_fc;\n  security_context_t ***ppppcStack_f4;\n  security_context_t ***ppppcStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  char *scon;\n  char *tcon;\n  stat sb;\n  \n  pcVar1 = *(char **)PTR___stack_chk_guard_000486a0;\n  scon = (char *)0x0;\n  tcon = (char *)0x0;\n  if (CONCAT31(in_register_00000014,local) == 0) {\n    pppppcVar13 = (security_context_t ****)0x20000;\n    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();\n    pppppcVar3 = unaff_s1;\n    if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    pppppcVar13 = unaff_s1;\n    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(scon);\n    (*(code *)PTR_freecon_000484d8)(tcon);\n  }\n  else {\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }\n  if (pcVar1 == *(char **)PTR___stack_chk_guard_000486a0) {\n    return (int)pppppcVar3;\n  }\n  pcVar18 = defaultcon;\n  puVar16 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  ppppcStack_f4 = (security_context_t ***)pppppcVar3;\n  ppppcStack_f0 = (security_context_t ***)unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar18;\n  if (*pcVar1 == '/') {\n    pcVar5 = (char *)0x0;\n    pcVar6 = pcVar1;\n  }\n  else {\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }\n  pcVar1 = (char *)&uStack_10c;\n  pppppcVar3 = pppppcVar13;\n  iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6);\n  if (iVar2 < 0) {\n    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();\n    if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar16 + 0x29910))(iVar7);\n  (**(code **)(puVar16 + 0x29910))(iVar2);\n  (**(code **)(puVar16 + 0x29818))(uStack_10c);\n  (**(code **)(puVar16 + 0x29818))(uStack_108);\n  (**(code **)(puVar16 + 0x299e8))(pcVar5);\n  if (pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)) {\n    return iVar8;\n  }\n  pcVar18 = *(code **)(puVar16 + 0x299a4);\n  pcVar6 = pcStack_fc;\n  (*pcVar18)();\n  pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8);\n  pcVar14 = pcVar1;\n  pcStack_14c = pcVar6;\n  iStack_140 = iVar2;\n  iStack_13c = iVar7;\n  iStack_138 = iVar8;\n  pcStack_134 = pcVar5;\n  if (*pcVar6 == '/') {\n    pcVar5 = (char *)0x0;\n  }\n  else if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }\n  uStack_148 = 0;\n  if (pppppcVar3 == (security_context_t ****)0x0) {\n    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);\n  }\n  else {\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }\n  if (pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)) {\n    pcVar17 = *(code **)(pcVar18 + 0x295bc);\n    pcVar6 = pcStack_144;\n    (*pcVar17)();\n    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));\n    if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }\n    return iVar2;\n  }\n  return (int)pppppcVar3;\n}" primitive_type (function_declarator "restorecon_private(char *path,_Bool local)" identifier (parameter_list "(char *path,_Bool local)" ( (parameter_declaration "char *path" primitive_type (pointer_declarator "*path" * identifier)) , (parameter_declaration "_Bool local" type_identifier identifier) ))) (compound_statement "{\n  char *pcVar1;\n  int iVar2;\n  security_context_t ****pppppcVar3;\n  security_context_t ****pppppcVar4;\n  char *pcVar5;\n  char *pcVar6;\n  int iVar7;\n  int iVar8;\n  FTS *sp;\n  FTSENT *pFVar9;\n  int *piVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  undefined3 in_register_00000014;\n  security_context_t ****pppppcVar13;\n  char *pcVar14;\n  undefined4 *in_a3;\n  security_context_t ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar15;\n  int unaff_s3;\n  undefined *puVar16;\n  code *pcVar17;\n  code *pcVar18;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  char *pcStack_144;\n  int iStack_140;\n  int iStack_13c;\n  int iStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  security_context_t ***ppppcStack_100;\n  char *pcStack_fc;\n  security_context_t ***ppppcStack_f4;\n  security_context_t ***ppppcStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  char *scon;\n  char *tcon;\n  stat sb;\n  \n  pcVar1 = *(char **)PTR___stack_chk_guard_000486a0;\n  scon = (char *)0x0;\n  tcon = (char *)0x0;\n  if (CONCAT31(in_register_00000014,local) == 0) {\n    pppppcVar13 = (security_context_t ****)0x20000;\n    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();\n    pppppcVar3 = unaff_s1;\n    if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    pppppcVar13 = unaff_s1;\n    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(scon);\n    (*(code *)PTR_freecon_000484d8)(tcon);\n  }\n  else {\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }\n  if (pcVar1 == *(char **)PTR___stack_chk_guard_000486a0) {\n    return (int)pppppcVar3;\n  }\n  pcVar18 = defaultcon;\n  puVar16 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  ppppcStack_f4 = (security_context_t ***)pppppcVar3;\n  ppppcStack_f0 = (security_context_t ***)unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar18;\n  if (*pcVar1 == '/') {\n    pcVar5 = (char *)0x0;\n    pcVar6 = pcVar1;\n  }\n  else {\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }\n  pcVar1 = (char *)&uStack_10c;\n  pppppcVar3 = pppppcVar13;\n  iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6);\n  if (iVar2 < 0) {\n    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();\n    if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar16 + 0x29910))(iVar7);\n  (**(code **)(puVar16 + 0x29910))(iVar2);\n  (**(code **)(puVar16 + 0x29818))(uStack_10c);\n  (**(code **)(puVar16 + 0x29818))(uStack_108);\n  (**(code **)(puVar16 + 0x299e8))(pcVar5);\n  if (pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)) {\n    return iVar8;\n  }\n  pcVar18 = *(code **)(puVar16 + 0x299a4);\n  pcVar6 = pcStack_fc;\n  (*pcVar18)();\n  pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8);\n  pcVar14 = pcVar1;\n  pcStack_14c = pcVar6;\n  iStack_140 = iVar2;\n  iStack_13c = iVar7;\n  iStack_138 = iVar8;\n  pcStack_134 = pcVar5;\n  if (*pcVar6 == '/') {\n    pcVar5 = (char *)0x0;\n  }\n  else if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }\n  uStack_148 = 0;\n  if (pppppcVar3 == (security_context_t ****)0x0) {\n    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);\n  }\n  else {\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }\n  if (pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)) {\n    pcVar17 = *(code **)(pcVar18 + 0x295bc);\n    pcVar6 = pcStack_144;\n    (*pcVar17)();\n    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));\n    if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }\n    return iVar2;\n  }\n  return (int)pppppcVar3;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "security_context_t ****pppppcVar3;" type_identifier (pointer_declarator "****pppppcVar3" * (pointer_declarator "***pppppcVar3" * (pointer_declarator "**pppppcVar3" * (pointer_declarator "*pppppcVar3" * identifier)))) ;) (declaration "security_context_t ****pppppcVar4;" type_identifier (pointer_declarator "****pppppcVar4" * (pointer_declarator "***pppppcVar4" * (pointer_declarator "**pppppcVar4" * (pointer_declarator "*pppppcVar4" * identifier)))) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "FTS *sp;" type_identifier (pointer_declarator "*sp" * identifier) ;) (declaration "FTSENT *pFVar9;" type_identifier (pointer_declarator "*pFVar9" * identifier) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "undefined3 in_register_00000014;" type_identifier identifier ;) (declaration "security_context_t ****pppppcVar13;" type_identifier (pointer_declarator "****pppppcVar13" * (pointer_declarator "***pppppcVar13" * (pointer_declarator "**pppppcVar13" * (pointer_declarator "*pppppcVar13" * identifier)))) ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined4 *in_a3;" type_identifier (pointer_declarator "*in_a3" * identifier) ;) (declaration "security_context_t ****unaff_s1;" type_identifier (pointer_declarator "****unaff_s1" * (pointer_declarator "***unaff_s1" * (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * identifier)))) ;) (declaration "int unaff_s2;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "code *pcVar17;" type_identifier (pointer_declarator "*pcVar17" * identifier) ;) (declaration "code *pcVar18;" type_identifier (pointer_declarator "*pcVar18" * identifier) ;) (declaration "char *pcStack_14c;" primitive_type (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "char *pcStack_144;" primitive_type (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "int iStack_140;" primitive_type identifier ;) (declaration "int iStack_13c;" primitive_type identifier ;) (declaration "int iStack_138;" primitive_type identifier ;) (declaration "char *pcStack_134;" primitive_type (pointer_declarator "*pcStack_134" * identifier) ;) (declaration "undefined4 uStack_10c;" type_identifier identifier ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "undefined4 uStack_104;" type_identifier identifier ;) (declaration "security_context_t ***ppppcStack_100;" type_identifier (pointer_declarator "***ppppcStack_100" * (pointer_declarator "**ppppcStack_100" * (pointer_declarator "*ppppcStack_100" * identifier))) ;) (declaration "char *pcStack_fc;" primitive_type (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "security_context_t ***ppppcStack_f4;" type_identifier (pointer_declarator "***ppppcStack_f4" * (pointer_declarator "**ppppcStack_f4" * (pointer_declarator "*ppppcStack_f4" * identifier))) ;) (declaration "security_context_t ***ppppcStack_f0;" type_identifier (pointer_declarator "***ppppcStack_f0" * (pointer_declarator "**ppppcStack_f0" * (pointer_declarator "*ppppcStack_f0" * identifier))) ;) (declaration "int iStack_ec;" primitive_type identifier ;) (declaration "int iStack_e8;" primitive_type identifier ;) (declaration "code *pcStack_e4;" type_identifier (pointer_declarator "*pcStack_e4" * identifier) ;) (declaration "char *scon;" primitive_type (pointer_declarator "*scon" * identifier) ;) (declaration "char *tcon;" primitive_type (pointer_declarator "*tcon" * identifier) ;) (declaration "stat sb;" type_identifier identifier ;) (expression_statement "pcVar1 = *(char **)PTR___stack_chk_guard_000486a0;" (assignment_expression "pcVar1 = *(char **)PTR___stack_chk_guard_000486a0" identifier = (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "scon = (char *)0x0;" (assignment_expression "scon = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "tcon = (char *)0x0;" (assignment_expression "tcon = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (CONCAT31(in_register_00000014,local) == 0) {\n    pppppcVar13 = (security_context_t ****)0x20000;\n    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();\n    pppppcVar3 = unaff_s1;\n    if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    pppppcVar13 = unaff_s1;\n    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(scon);\n    (*(code *)PTR_freecon_000484d8)(tcon);\n  }\n  else {\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }" if (parenthesized_expression "(CONCAT31(in_register_00000014,local) == 0)" ( (binary_expression "CONCAT31(in_register_00000014,local) == 0" (call_expression "CONCAT31(in_register_00000014,local)" identifier (argument_list "(in_register_00000014,local)" ( identifier , identifier ))) == number_literal) )) (compound_statement "{\n    pppppcVar13 = (security_context_t ****)0x20000;\n    unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();\n    pppppcVar3 = unaff_s1;\n    if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    pppppcVar13 = unaff_s1;\n    iVar2 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(scon);\n    (*(code *)PTR_freecon_000484d8)(tcon);\n  }" { (expression_statement "pppppcVar13 = (security_context_t ****)0x20000;" (assignment_expression "pppppcVar13 = (security_context_t ****)0x20000" identifier = (cast_expression "(security_context_t ****)0x20000" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)();" (assignment_expression "unaff_s1 = (security_context_t ****)(*(code *)PTR_open64_000485a0)()" identifier = (cast_expression "(security_context_t ****)(*(code *)PTR_open64_000485a0)()" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_open64_000485a0)()" (parenthesized_expression "(*(code *)PTR_open64_000485a0)" ( (pointer_expression "*(code *)PTR_open64_000485a0" * (cast_expression "(code *)PTR_open64_000485a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "pppppcVar3 = unaff_s1;" (assignment_expression "pppppcVar3 = unaff_s1" identifier = identifier) ;) (if_statement "if (unaff_s1 == (security_context_t ****)0xffffffff) {\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" if (parenthesized_expression "(unaff_s1 == (security_context_t ****)0xffffffff)" ( (binary_expression "unaff_s1 == (security_context_t ****)0xffffffff" identifier == (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" { (expression_statement "piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)();" (assignment_expression "piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)()" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (*piVar10 == 0x5a) {\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }" if (parenthesized_expression "(*piVar10 == 0x5a)" ( (binary_expression "*piVar10 == 0x5a" (pointer_expression "*piVar10" * identifier) == number_literal) )) (compound_statement "{\n        pppppcVar13 = (security_context_t ****)path;\n        iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);\n        if (-1 < iVar2) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }" { (expression_statement "pppppcVar13 = (security_context_t ****)path;" (assignment_expression "pppppcVar13 = (security_context_t ****)path" identifier = (cast_expression "(security_context_t ****)path" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (expression_statement "iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb);" (assignment_expression "iVar2 = (*(code *)PTR___lxstat64_0004848c)(3,path,&sb)" identifier = (call_expression "(*(code *)PTR___lxstat64_0004848c)(3,path,&sb)" (parenthesized_expression "(*(code *)PTR___lxstat64_0004848c)" ( (pointer_expression "*(code *)PTR___lxstat64_0004848c" * (cast_expression "(code *)PTR___lxstat64_0004848c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3,path,&sb)" ( number_literal , identifier , (pointer_expression "&sb" & identifier) )))) ;) (if_statement "if (-1 < iVar2) goto LAB_0001e9d0;" if (parenthesized_expression "(-1 < iVar2)" ( (binary_expression "-1 < iVar2" number_literal < identifier) )) (goto_statement "goto LAB_0001e9d0;" goto statement_identifier ;)) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        unaff_s2 = 0;\n      }" else (compound_statement "{\n        unaff_s2 = 0;\n      }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (goto_statement "goto LAB_0001eb5c;" goto statement_identifier ;) })) (expression_statement "pppppcVar13 = unaff_s1;" (assignment_expression "pppppcVar13 = unaff_s1" identifier = identifier) ;) (expression_statement "iVar2 = (*(code *)PTR___fxstat64_00048628)(3);" (assignment_expression "iVar2 = (*(code *)PTR___fxstat64_00048628)(3)" identifier = (call_expression "(*(code *)PTR___fxstat64_00048628)(3)" (parenthesized_expression "(*(code *)PTR___fxstat64_00048628)" ( (pointer_expression "*(code *)PTR___fxstat64_00048628" * (cast_expression "(code *)PTR___fxstat64_00048628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 < 0) {\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n      unaff_s2 = 0;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (labeled_statement "LAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);" statement_identifier : (expression_statement "(*(code *)PTR_close_00048480)(unaff_s1);" (call_expression "(*(code *)PTR_close_00048480)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_close_00048480)" ( (pointer_expression "*(code *)PTR_close_00048480" * (cast_expression "(code *)PTR_close_00048480" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))) ;)) }) (else_clause "else {\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }" else (compound_statement "{\nLAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);\n      if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }\n    }" { (labeled_statement "LAB_0001e9d0:\n      iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);" statement_identifier : (expression_statement "iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon);" (assignment_expression "iVar2 = (*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon)" identifier = (call_expression "(*(code *)PTR_matchpathcon_00048618)(path,sb.st_mode,&scon)" (parenthesized_expression "(*(code *)PTR_matchpathcon_00048618)" ( (pointer_expression "*(code *)PTR_matchpathcon_00048618" * (cast_expression "(code *)PTR_matchpathcon_00048618" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(path,sb.st_mode,&scon)" ( identifier , (field_expression "sb.st_mode" identifier . field_identifier) , (pointer_expression "&scon" & identifier) )))) ;)) (if_statement "if (iVar2 < 0) {\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n        piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);\n        if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }" { (expression_statement "piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon);" (assignment_expression "piVar10 = (int *)(*(code *)PTR___errno_location_0004856c)(scon)" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)(scon)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(scon)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(scon)" ( identifier ))))) ;) (if_statement "if (*piVar10 == 2) {\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" if (parenthesized_expression "(*piVar10 == 2)" ( (binary_expression "*piVar10 == 2" (pointer_expression "*piVar10" * identifier) == number_literal) )) (compound_statement "{\n          *piVar10 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "*piVar10 = 0x3d;" (assignment_expression "*piVar10 = 0x3d" (pointer_expression "*piVar10" * identifier) = number_literal) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" else (compound_statement "{\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0001eb3c:\n        pppppcVar13 = (security_context_t ****)sb.st_mode;" statement_identifier : (expression_statement "pppppcVar13 = (security_context_t ****)sb.st_mode;" (assignment_expression "pppppcVar13 = (security_context_t ****)sb.st_mode" identifier = (cast_expression "(security_context_t ****)sb.st_mode" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (field_expression "sb.st_mode" identifier . field_identifier))) ;)) (if_statement "if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (security_context_t ****)0xffffffff)" ( (binary_expression "unaff_s1 != (security_context_t ****)0xffffffff" identifier != (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          pppppcVar3 = (security_context_t ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" { (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) }) (else_clause "else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }" else (compound_statement "{\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        pppppcVar13 = (security_context_t ****)&tcon;\n        if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);\n        if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }\n      }" { (expression_statement "unaff_s2 = (*(code *)PTR_context_new_0004868c)();" (assignment_expression "unaff_s2 = (*(code *)PTR_context_new_0004868c)()" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)()" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" if (parenthesized_expression "(unaff_s2 == 0)" ( (binary_expression "unaff_s2 == 0" identifier == number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;) })) (expression_statement "pppppcVar13 = (security_context_t ****)&tcon;" (assignment_expression "pppppcVar13 = (security_context_t ****)&tcon" identifier = (cast_expression "(security_context_t ****)&tcon" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (pointer_expression "&tcon" & identifier))) ;) (if_statement "if (unaff_s1 != (security_context_t ****)0xffffffff) {\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (security_context_t ****)0xffffffff)" ( (binary_expression "unaff_s1 != (security_context_t ****)0xffffffff" identifier != (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);\n          if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" { (expression_statement "iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13);" (assignment_expression "iVar2 = rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13)" identifier = (call_expression "rpl_fgetfilecon((int)unaff_s1,(security_context_t *)pppppcVar13)" identifier (argument_list "((int)unaff_s1,(security_context_t *)pppppcVar13)" ( (cast_expression "(int)unaff_s1" ( (type_descriptor "int" primitive_type) ) identifier) , (cast_expression "(security_context_t *)pppppcVar13" ( (type_descriptor "security_context_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar2 < 0) {\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n            unaff_s3 = 0;\n            pppppcVar3 = (security_context_t ****)0xffffffff;\n          }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }" else (compound_statement "{\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n            if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n          }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(tcon)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(tcon)" ( identifier )))) ;) (if_statement "if (unaff_s3 == 0) {\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }\n            else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }" if (parenthesized_expression "(unaff_s3 == 0)" ( (binary_expression "unaff_s3 == 0" identifier == number_literal) )) (compound_statement "{\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }" { (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }" else (compound_statement "{\n              pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              pppppcVar4 = pppppcVar13;\n              if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;\n              pppppcVar3 = (security_context_t ****)0xffffffff;\n            }" { (expression_statement "pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2);" (assignment_expression "pppppcVar13 = (security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(security_context_t ****)\n                            (*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (expression_statement "pppppcVar4 = pppppcVar13;" (assignment_expression "pppppcVar4 = pppppcVar13" identifier = identifier) ;) (if_statement "if (pppppcVar13 != (security_context_t ****)0x0) goto LAB_0001ea64;" if (parenthesized_expression "(pppppcVar13 != (security_context_t ****)0x0)" ( (binary_expression "pppppcVar13 != (security_context_t ****)0x0" identifier != (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (goto_statement "goto LAB_0001ea64;" goto statement_identifier ;)) (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }))) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13);" (assignment_expression "iVar2 = rpl_lgetfilecon(path,(security_context_t *)pppppcVar13)" identifier = (call_expression "rpl_lgetfilecon(path,(security_context_t *)pppppcVar13)" identifier (argument_list "(path,(security_context_t *)pppppcVar13)" ( identifier , (cast_expression "(security_context_t *)pppppcVar13" ( (type_descriptor "security_context_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar2 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }" else (compound_statement "{\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);\n          if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }\n        }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(tcon)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(tcon)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(tcon)" ( identifier )))) ;) (if_statement "if ((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)) {\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }" if (parenthesized_expression "((unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0))" ( (binary_expression "(unaff_s3 != 0) &&\n             (pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)" (parenthesized_expression "(unaff_s3 != 0)" ( (binary_expression "unaff_s3 != 0" identifier != number_literal) )) && (parenthesized_expression "(pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0)" ( (comma_expression "pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0" (assignment_expression "pppppcVar4 = (security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(security_context_t ****)\n                           (*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) , (comma_expression "pppppcVar13 = pppppcVar4, pppppcVar4 != (security_context_t ****)0x0" (assignment_expression "pppppcVar13 = pppppcVar4" identifier = identifier) , (binary_expression "pppppcVar4 != (security_context_t ****)0x0" identifier != (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (compound_statement "{\nLAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            sb.st_mode = (__mode_t)pppppcVar4;\n            if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;\n            if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);\n            pppppcVar3 = unaff_s1;\n          }" { (labeled_statement "LAB_0001ea64:\n            iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" statement_identifier : (expression_statement "iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" (assignment_expression "iVar2 = (*(code *)PTR_context_type_set_00048658)(unaff_s3)" identifier = (call_expression "(*(code *)PTR_context_type_set_00048658)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_type_set_00048658)" ( (pointer_expression "*(code *)PTR_context_type_set_00048658" * (cast_expression "(code *)PTR_context_type_set_00048658" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier )))) ;)) (expression_statement "sb.st_mode = (__mode_t)pppppcVar4;" (assignment_expression "sb.st_mode = (__mode_t)pppppcVar4" (field_expression "sb.st_mode" identifier . field_identifier) = (cast_expression "(__mode_t)pppppcVar4" ( (type_descriptor "__mode_t" type_identifier) ) identifier)) ;) (if_statement "if ((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))\n            goto LAB_0001eb3c;" if (parenthesized_expression "((iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0))" ( (binary_expression "(iVar2 != 0) ||\n               (pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) || (parenthesized_expression "(pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0)" ( (comma_expression "pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)\n               , sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0" (assignment_expression "pppppcVar13 = (security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" identifier = (cast_expression "(security_context_t ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_str_0004849c)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_str_0004849c)" ( (pointer_expression "*(code *)PTR_context_str_0004849c" * (cast_expression "(code *)PTR_context_str_0004849c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))))) , (comma_expression "sb.st_mode = (__mode_t)pppppcVar4, pppppcVar13 == (security_context_t ****)0x0" (assignment_expression "sb.st_mode = (__mode_t)pppppcVar4" (field_expression "sb.st_mode" identifier . field_identifier) = (cast_expression "(__mode_t)pppppcVar4" ( (type_descriptor "__mode_t" type_identifier) ) identifier)) , (binary_expression "pppppcVar13 == (security_context_t ****)0x0" identifier == (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;)) (if_statement "if (unaff_s1 != (security_context_t ****)0xffffffff) {\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" if (parenthesized_expression "(unaff_s1 != (security_context_t ****)0xffffffff)" ( (binary_expression "unaff_s1 != (security_context_t ****)0xffffffff" identifier != (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" { (expression_statement "pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);" (assignment_expression "pppppcVar3 = (security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" identifier = (cast_expression "(security_context_t ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_fsetfilecon_00048528)" ( (pointer_expression "*(code *)PTR_fsetfilecon_00048528" * (cast_expression "(code *)PTR_fsetfilecon_00048528" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))))) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path);" (assignment_expression "unaff_s1 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path)" identifier = (cast_expression "(security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)(path)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)(path)" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(path)" ( identifier ))))) ;) (expression_statement "pppppcVar3 = unaff_s1;" (assignment_expression "pppppcVar3 = unaff_s1" identifier = identifier) ;) })) }))) }))) }))) (labeled_statement "LAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s2);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s3);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(scon);" (call_expression "(*(code *)PTR_freecon_000484d8)(scon)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(scon)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(tcon);" (call_expression "(*(code *)PTR_freecon_000484d8)(tcon)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(tcon)" ( identifier ))) ;) }) (else_clause "else {\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }" else (compound_statement "{\n    iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);\n    pppppcVar13 = (security_context_t ****)tcon;\n    if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }\n  }" { (expression_statement "iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon);" (assignment_expression "iVar2 = (*(code *)PTR_getfscreatecon_000484ac)(&tcon)" identifier = (call_expression "(*(code *)PTR_getfscreatecon_000484ac)(&tcon)" (parenthesized_expression "(*(code *)PTR_getfscreatecon_000484ac)" ( (pointer_expression "*(code *)PTR_getfscreatecon_000484ac" * (cast_expression "(code *)PTR_getfscreatecon_000484ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&tcon)" ( (pointer_expression "&tcon" & identifier) )))) ;) (expression_statement "pppppcVar13 = (security_context_t ****)tcon;" (assignment_expression "pppppcVar13 = (security_context_t ****)tcon" identifier = (cast_expression "(security_context_t ****)tcon" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (if_statement "if (iVar2 < 0) {\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }" { (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }" else (if_statement "if (tcon == (char *)0x0) {\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }\n    else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }" if (parenthesized_expression "(tcon == (char *)0x0)" ( (binary_expression "tcon == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);\n      *puVar11 = 0x3d;\n      pppppcVar3 = (security_context_t ****)0xffffffff;\n    }" { (expression_statement "puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path);" (assignment_expression "puVar11 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(path)" identifier = (cast_expression "(undefined4 *)(*(code *)PTR___errno_location_0004856c)(path)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(path)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(path)" ( identifier ))))) ;) (expression_statement "*puVar11 = 0x3d;" (assignment_expression "*puVar11 = 0x3d" (pointer_expression "*puVar11" * identifier) = number_literal) ;) (expression_statement "pppppcVar3 = (security_context_t ****)0xffffffff;" (assignment_expression "pppppcVar3 = (security_context_t ****)0xffffffff" identifier = (cast_expression "(security_context_t ****)0xffffffff" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }" else (compound_statement "{\n      pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(tcon);\n    }" { (expression_statement "pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)();" (assignment_expression "pppppcVar3 = (security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)()" identifier = (cast_expression "(security_context_t ****)(*(code *)PTR_lsetfilecon_000486b4)()" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)()" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(tcon);" (call_expression "(*(code *)PTR_freecon_000484d8)(tcon)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(tcon)" ( identifier ))) ;) }))))) }))) (if_statement "if (pcVar1 == *(char **)PTR___stack_chk_guard_000486a0) {\n    return (int)pppppcVar3;\n  }" if (parenthesized_expression "(pcVar1 == *(char **)PTR___stack_chk_guard_000486a0)" ( (binary_expression "pcVar1 == *(char **)PTR___stack_chk_guard_000486a0" identifier == (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return (int)pppppcVar3;\n  }" { (return_statement "return (int)pppppcVar3;" return (cast_expression "(int)pppppcVar3" ( (type_descriptor "int" primitive_type) ) identifier) ;) })) (expression_statement "pcVar18 = defaultcon;" (assignment_expression "pcVar18 = defaultcon" identifier = identifier) ;) (expression_statement "puVar16 = PTR___stack_chk_fail_00048664;" (assignment_expression "puVar16 = PTR___stack_chk_fail_00048664" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00048664)();" (call_expression "(*(code *)PTR___stack_chk_fail_00048664)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00048664)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00048664" * (cast_expression "(code *)PTR___stack_chk_fail_00048664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0);" (assignment_expression "pcStack_fc = (char *)**(undefined4 **)(puVar16 + 0x299e0)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar16 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar16 + 0x299e0)" * (pointer_expression "*(undefined4 **)(puVar16 + 0x299e0)" * (cast_expression "(undefined4 **)(puVar16 + 0x299e0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299e0)" ( (binary_expression "puVar16 + 0x299e0" identifier + number_literal) ))))))) ;) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" identifier = number_literal) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "ppppcStack_f4 = (security_context_t ***)pppppcVar3;" (assignment_expression "ppppcStack_f4 = (security_context_t ***)pppppcVar3" identifier = (cast_expression "(security_context_t ***)pppppcVar3" ( (type_descriptor "security_context_t ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (expression_statement "ppppcStack_f0 = (security_context_t ***)unaff_s1;" (assignment_expression "ppppcStack_f0 = (security_context_t ***)unaff_s1" identifier = (cast_expression "(security_context_t ***)unaff_s1" ( (type_descriptor "security_context_t ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (expression_statement "iStack_ec = unaff_s2;" (assignment_expression "iStack_ec = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_e8 = unaff_s3;" (assignment_expression "iStack_e8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_e4 = pcVar18;" (assignment_expression "pcStack_e4 = pcVar18" identifier = identifier) ;) (if_statement "if (*pcVar1 == '/') {\n    pcVar5 = (char *)0x0;\n    pcVar6 = pcVar1;\n  }\n  else {\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }" if (parenthesized_expression "(*pcVar1 == '/')" ( (binary_expression "*pcVar1 == '/'" (pointer_expression "*pcVar1" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n    pcVar5 = (char *)0x0;\n    pcVar6 = pcVar1;\n  }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = pcVar1;" (assignment_expression "pcVar6 = pcVar1" identifier = identifier) ;) }) (else_clause "else {\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }" else (compound_statement "{\n    pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);\n    pcVar6 = pcVar5;\n    if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }\n  }" { (expression_statement "pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING);" (assignment_expression "pcVar5 = canonicalize_filename_mode(pcVar1,CAN_MISSING)" identifier = (call_expression "canonicalize_filename_mode(pcVar1,CAN_MISSING)" identifier (argument_list "(pcVar1,CAN_MISSING)" ( identifier , identifier )))) ;) (expression_statement "pcVar6 = pcVar5;" (assignment_expression "pcVar6 = pcVar5" identifier = identifier) ;) (if_statement "if (pcVar5 == (char *)0x0) {\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }" if (parenthesized_expression "(pcVar5 == (char *)0x0)" ( (binary_expression "pcVar5 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar16 + 0x298ac))();\n      (**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar1);\n    }" { (expression_statement "(**(code **)(puVar16 + 0x298ac))();" (call_expression "(**(code **)(puVar16 + 0x298ac))()" (parenthesized_expression "(**(code **)(puVar16 + 0x298ac))" ( (pointer_expression "**(code **)(puVar16 + 0x298ac)" * (pointer_expression "*(code **)(puVar16 + 0x298ac)" * (cast_expression "(code **)(puVar16 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x298ac)" ( (binary_expression "puVar16 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "(**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5);" (call_expression "(**(code **)(puVar16 + 0x299b0))(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5)" (parenthesized_expression "(**(code **)(puVar16 + 0x299b0))" ( (pointer_expression "**(code **)(puVar16 + 0x299b0)" * (pointer_expression "*(code **)(puVar16 + 0x299b0)" * (cast_expression "(code **)(puVar16 + 0x299b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299b0)" ( (binary_expression "puVar16 + 0x299b0" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(puVar16 + 0x2948c) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(puVar16 + 0x2948c) + 0x5d20" (pointer_expression "*(int *)(puVar16 + 0x2948c)" * (cast_expression "(int *)(puVar16 + 0x2948c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + 0x2948c)" ( (binary_expression "puVar16 + 0x2948c" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) comment (expression_statement "quotearg_style(shell_escape_always_quoting_style,pcVar1);" (call_expression "quotearg_style(shell_escape_always_quoting_style,pcVar1)" identifier (argument_list "(shell_escape_always_quoting_style,pcVar1)" ( identifier , identifier ))) ;) })) }))) (expression_statement "pcVar1 = (char *)&uStack_10c;" (assignment_expression "pcVar1 = (char *)&uStack_10c" identifier = (cast_expression "(char *)&uStack_10c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_10c" & identifier))) ;) (expression_statement "pppppcVar3 = pppppcVar13;" (assignment_expression "pppppcVar3 = pppppcVar13" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6);" (assignment_expression "iVar2 = (**(code **)(puVar16 + 0x29958))(pcVar6)" identifier = (call_expression "(**(code **)(puVar16 + 0x29958))(pcVar6)" (parenthesized_expression "(**(code **)(puVar16 + 0x29958))" ( (pointer_expression "**(code **)(puVar16 + 0x29958)" * (pointer_expression "*(code **)(puVar16 + 0x29958)" * (cast_expression "(code **)(puVar16 + 0x29958)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29958)" ( (binary_expression "puVar16 + 0x29958" identifier + number_literal) ))))) )) (argument_list "(pcVar6)" ( identifier )))) ;) (if_statement "if (iVar2 < 0) {\n    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();\n    if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n    piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();\n    if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n  }" { (expression_statement "piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))();" (assignment_expression "piVar10 = (int *)(**(code **)(puVar16 + 0x298ac))()" identifier = (cast_expression "(int *)(**(code **)(puVar16 + 0x298ac))()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar16 + 0x298ac))()" (parenthesized_expression "(**(code **)(puVar16 + 0x298ac))" ( (pointer_expression "**(code **)(puVar16 + 0x298ac)" * (pointer_expression "*(code **)(puVar16 + 0x298ac)" * (cast_expression "(code **)(puVar16 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x298ac)" ( (binary_expression "puVar16 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (if_statement "if (*piVar10 == 2) {\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }\n    else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }" if (parenthesized_expression "(*piVar10 == 2)" ( (binary_expression "*piVar10 == 2" (pointer_expression "*piVar10" * identifier) == number_literal) )) (compound_statement "{\n      *piVar10 = 0x3d;\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }" { (expression_statement "*piVar10 = 0x3d;" (assignment_expression "*piVar10 = 0x3d" (pointer_expression "*piVar10" * identifier) = number_literal) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }) (else_clause "else {\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }" else (compound_statement "{\n      iVar2 = 0;\n      iVar7 = 0;\n      iVar8 = -1;\n    }" { (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }))) }) (else_clause "else {\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }" else (compound_statement "{\n    uStack_104 = 0;\n    ppppcStack_100 = (security_context_t ***)0x0;\n    pcVar6 = dir_name(pcVar6);\n    if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar16 + 0x299e8))(pcVar6);\n    (**(code **)(puVar16 + 0x29818))(uStack_104);\n    (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n    iVar2 = 0;\n    iVar7 = 0;\n    iVar8 = -1;\n  }" { (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" identifier = number_literal) ;) (expression_statement "ppppcStack_100 = (security_context_t ***)0x0;" (assignment_expression "ppppcStack_100 = (security_context_t ***)0x0" identifier = (cast_expression "(security_context_t ***)0x0" ( (type_descriptor "security_context_t ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "pcVar6 = dir_name(pcVar6);" (assignment_expression "pcVar6 = dir_name(pcVar6)" identifier = (call_expression "dir_name(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);\n      pppppcVar3 = &ppppcStack_100;\n      if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" { (expression_statement "iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104);" (assignment_expression "iVar2 = (**(code **)(puVar16 + 0x29950))(&uStack_104)" identifier = (call_expression "(**(code **)(puVar16 + 0x29950))(&uStack_104)" (parenthesized_expression "(**(code **)(puVar16 + 0x29950))" ( (pointer_expression "**(code **)(puVar16 + 0x29950)" * (pointer_expression "*(code **)(puVar16 + 0x29950)" * (cast_expression "(code **)(puVar16 + 0x29950)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29950)" ( (binary_expression "puVar16 + 0x29950" identifier + number_literal) ))))) )) (argument_list "(&uStack_104)" ( (pointer_expression "&uStack_104" & identifier) )))) ;) (expression_statement "pppppcVar3 = &ppppcStack_100;" (assignment_expression "pppppcVar3 = &ppppcStack_100" identifier = (pointer_expression "&ppppcStack_100" & identifier)) ;) (if_statement "if (((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)) {\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" if (parenthesized_expression "(((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0))" ( (binary_expression "((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)) &&\n         (pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)" (parenthesized_expression "((-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2))" ( (binary_expression "(-1 < iVar2) &&\n          (iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)" (parenthesized_expression "(-1 < iVar2)" ( (binary_expression "-1 < iVar2" number_literal < identifier) )) && (parenthesized_expression "(iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2)" ( (comma_expression "iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3), -1 < iVar2" (assignment_expression "iVar2 = rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3)" identifier = (call_expression "rpl_getfilecon(pcVar6,(security_context_t *)pppppcVar3)" identifier (argument_list "(pcVar6,(security_context_t *)pppppcVar3)" ( identifier , (cast_expression "(security_context_t *)pppppcVar3" ( (type_descriptor "security_context_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) , (binary_expression "-1 < iVar2" number_literal < identifier)) ))) )) && (parenthesized_expression "(pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0)" ( (comma_expression "pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13), pcVar1 != (char *)0x0" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13)" identifier = (cast_expression "(char *)(**(code **)(puVar16 + 0x297c4))(pppppcVar13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar16 + 0x297c4))(pppppcVar13)" (parenthesized_expression "(**(code **)(puVar16 + 0x297c4))" ( (pointer_expression "**(code **)(puVar16 + 0x297c4)" * (pointer_expression "*(code **)(puVar16 + 0x297c4)" * (cast_expression "(code **)(puVar16 + 0x297c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x297c4)" ( (binary_expression "puVar16 + 0x297c4" identifier + number_literal) ))))) )) (argument_list "(pppppcVar13)" ( identifier ))))) , (binary_expression "pcVar1 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n        in_a3 = &uStack_108;\n        pppppcVar3 = (security_context_t ****)ppppcStack_100;\n        iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);\n        (**(code **)(puVar16 + 0x299e8))(pcVar6);\n        (**(code **)(puVar16 + 0x29818))(uStack_104);\n        (**(code **)(puVar16 + 0x29818))(ppppcStack_100);\n        if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" { (expression_statement "in_a3 = &uStack_108;" (assignment_expression "in_a3 = &uStack_108" identifier = (pointer_expression "&uStack_108" & identifier)) ;) (expression_statement "pppppcVar3 = (security_context_t ****)ppppcStack_100;" (assignment_expression "pppppcVar3 = (security_context_t ****)ppppcStack_100" identifier = (cast_expression "(security_context_t ****)ppppcStack_100" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (expression_statement "iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104);" (assignment_expression "iVar2 = (**(code **)(puVar16 + 0x29830))(uStack_104)" identifier = (call_expression "(**(code **)(puVar16 + 0x29830))(uStack_104)" (parenthesized_expression "(**(code **)(puVar16 + 0x29830))" ( (pointer_expression "**(code **)(puVar16 + 0x29830)" * (pointer_expression "*(code **)(puVar16 + 0x29830)" * (cast_expression "(code **)(puVar16 + 0x29830)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29830)" ( (binary_expression "puVar16 + 0x29830" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar16 + 0x299e8))(pcVar6);" (call_expression "(**(code **)(puVar16 + 0x299e8))(pcVar6)" (parenthesized_expression "(**(code **)(puVar16 + 0x299e8))" ( (pointer_expression "**(code **)(puVar16 + 0x299e8)" * (pointer_expression "*(code **)(puVar16 + 0x299e8)" * (cast_expression "(code **)(puVar16 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299e8)" ( (binary_expression "puVar16 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar16 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(ppppcStack_100);" (call_expression "(**(code **)(puVar16 + 0x29818))(ppppcStack_100)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(ppppcStack_100)" ( identifier ))) ;) (if_statement "if (iVar2 < 0) {\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }\n        else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }" if (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) (compound_statement "{\n          iVar2 = 0;\n          iVar7 = 0;\n          iVar8 = -1;\n        }" { (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }) (else_clause "else {\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }" else (compound_statement "{\n          iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);\n          if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }\n        }" { (expression_statement "iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c);" (assignment_expression "iVar7 = (**(code **)(puVar16 + 0x299cc))(uStack_10c)" identifier = (call_expression "(**(code **)(puVar16 + 0x299cc))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar16 + 0x299cc))" ( (pointer_expression "**(code **)(puVar16 + 0x299cc)" * (pointer_expression "*(code **)(puVar16 + 0x299cc)" * (cast_expression "(code **)(puVar16 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299cc)" ( (binary_expression "puVar16 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier )))) ;) (if_statement "if (iVar7 == 0) {\n            iVar8 = -1;\n            iVar2 = 0;\n          }\n          else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar8 = -1;\n            iVar2 = 0;\n          }" { (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }" else (compound_statement "{\n            iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);\n            if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }\n          }" { (expression_statement "iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108);" (assignment_expression "iVar2 = (**(code **)(puVar16 + 0x299cc))(uStack_108)" identifier = (call_expression "(**(code **)(puVar16 + 0x299cc))(uStack_108)" (parenthesized_expression "(**(code **)(puVar16 + 0x299cc))" ( (pointer_expression "**(code **)(puVar16 + 0x299cc)" * (pointer_expression "*(code **)(puVar16 + 0x299cc)" * (cast_expression "(code **)(puVar16 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299cc)" ( (binary_expression "puVar16 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier )))) ;) (if_statement "if (iVar2 == 0) {\n              iVar8 = -1;\n            }\n            else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar8 = -1;\n            }" { (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }) (else_clause "else {\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }" else (compound_statement "{\n              pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);\n              if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }\n            }" { (expression_statement "pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7);" (assignment_expression "pppppcVar3 = (security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7)" identifier = (cast_expression "(security_context_t ****)(**(code **)(puVar16 + 0x29a08))(iVar7)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar16 + 0x29a08))(iVar7)" (parenthesized_expression "(**(code **)(puVar16 + 0x29a08))" ( (pointer_expression "**(code **)(puVar16 + 0x29a08)" * (pointer_expression "*(code **)(puVar16 + 0x29a08)" * (cast_expression "(code **)(puVar16 + 0x29a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29a08)" ( (binary_expression "puVar16 + 0x29a08" identifier + number_literal) ))))) )) (argument_list "(iVar7)" ( identifier ))))) ;) (if_statement "if (pppppcVar3 == (security_context_t ****)0x0) {\n                iVar8 = -1;\n              }\n              else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }" if (parenthesized_expression "(pppppcVar3 == (security_context_t ****)0x0)" ( (binary_expression "pppppcVar3 == (security_context_t ****)0x0" identifier == (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n                iVar8 = -1;\n              }" { (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }" else (compound_statement "{\n                iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);\n                if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }\n              }" { (expression_statement "iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2);" (assignment_expression "iVar8 = (**(code **)(puVar16 + 0x29998))(iVar2)" identifier = (call_expression "(**(code **)(puVar16 + 0x29998))(iVar2)" (parenthesized_expression "(**(code **)(puVar16 + 0x29998))" ( (pointer_expression "**(code **)(puVar16 + 0x29998)" * (pointer_expression "*(code **)(puVar16 + 0x29998)" * (cast_expression "(code **)(puVar16 + 0x29998)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29998)" ( (binary_expression "puVar16 + 0x29998" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;) (if_statement "if (iVar8 == 0) {\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }\n                else {\n                  iVar8 = -1;\n                }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);\n                  if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }\n                }" { (expression_statement "iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2);" (assignment_expression "iVar8 = (**(code **)(puVar16 + 0x297dc))(iVar2)" identifier = (call_expression "(**(code **)(puVar16 + 0x297dc))(iVar2)" (parenthesized_expression "(**(code **)(puVar16 + 0x297dc))" ( (pointer_expression "**(code **)(puVar16 + 0x297dc)" * (pointer_expression "*(code **)(puVar16 + 0x297dc)" * (cast_expression "(code **)(puVar16 + 0x297dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x297dc)" ( (binary_expression "puVar16 + 0x297dc" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;) (if_statement "if (iVar8 == 0) {\n                    iVar8 = -1;\n                  }\n                  else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    iVar8 = -1;\n                  }" { (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }" else (compound_statement "{\n                    iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);\n                  }" { (expression_statement "iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8);" (assignment_expression "iVar8 = (**(code **)(puVar16 + 0x298e4))(iVar8)" identifier = (call_expression "(**(code **)(puVar16 + 0x298e4))(iVar8)" (parenthesized_expression "(**(code **)(puVar16 + 0x298e4))" ( (pointer_expression "**(code **)(puVar16 + 0x298e4)" * (pointer_expression "*(code **)(puVar16 + 0x298e4)" * (cast_expression "(code **)(puVar16 + 0x298e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x298e4)" ( (binary_expression "puVar16 + 0x298e4" identifier + number_literal) ))))) )) (argument_list "(iVar8)" ( identifier )))) ;) }))) }) (else_clause "else {\n                  iVar8 = -1;\n                }" else (compound_statement "{\n                  iVar8 = -1;\n                }" { (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }))) }))) }))) }))) }))) (goto_statement "goto LAB_0001eec0;" goto statement_identifier ;) })) })) (expression_statement "(**(code **)(puVar16 + 0x299e8))(pcVar6);" (call_expression "(**(code **)(puVar16 + 0x299e8))(pcVar6)" (parenthesized_expression "(**(code **)(puVar16 + 0x299e8))" ( (pointer_expression "**(code **)(puVar16 + 0x299e8)" * (pointer_expression "*(code **)(puVar16 + 0x299e8)" * (cast_expression "(code **)(puVar16 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299e8)" ( (binary_expression "puVar16 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar16 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(ppppcStack_100);" (call_expression "(**(code **)(puVar16 + 0x29818))(ppppcStack_100)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(ppppcStack_100)" ( identifier ))) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) }))) (labeled_statement "LAB_0001eec0:\n  (**(code **)(puVar16 + 0x29910))(iVar7);" statement_identifier : (expression_statement "(**(code **)(puVar16 + 0x29910))(iVar7);" (call_expression "(**(code **)(puVar16 + 0x29910))(iVar7)" (parenthesized_expression "(**(code **)(puVar16 + 0x29910))" ( (pointer_expression "**(code **)(puVar16 + 0x29910)" * (pointer_expression "*(code **)(puVar16 + 0x29910)" * (cast_expression "(code **)(puVar16 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29910)" ( (binary_expression "puVar16 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar7)" ( identifier ))) ;)) (expression_statement "(**(code **)(puVar16 + 0x29910))(iVar2);" (call_expression "(**(code **)(puVar16 + 0x29910))(iVar2)" (parenthesized_expression "(**(code **)(puVar16 + 0x29910))" ( (pointer_expression "**(code **)(puVar16 + 0x29910)" * (pointer_expression "*(code **)(puVar16 + 0x29910)" * (cast_expression "(code **)(puVar16 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29910)" ( (binary_expression "puVar16 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(uStack_10c);" (call_expression "(**(code **)(puVar16 + 0x29818))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x29818))(uStack_108);" (call_expression "(**(code **)(puVar16 + 0x29818))(uStack_108)" (parenthesized_expression "(**(code **)(puVar16 + 0x29818))" ( (pointer_expression "**(code **)(puVar16 + 0x29818)" * (pointer_expression "*(code **)(puVar16 + 0x29818)" * (cast_expression "(code **)(puVar16 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x29818)" ( (binary_expression "puVar16 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar16 + 0x299e8))(pcVar5);" (call_expression "(**(code **)(puVar16 + 0x299e8))(pcVar5)" (parenthesized_expression "(**(code **)(puVar16 + 0x299e8))" ( (pointer_expression "**(code **)(puVar16 + 0x299e8)" * (pointer_expression "*(code **)(puVar16 + 0x299e8)" * (cast_expression "(code **)(puVar16 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299e8)" ( (binary_expression "puVar16 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(pcVar5)" ( identifier ))) ;) (if_statement "if (pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)) {\n    return iVar8;\n  }" if (parenthesized_expression "(pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0))" ( (binary_expression "pcStack_fc == (char *)**(int **)(puVar16 + 0x299e0)" identifier == (cast_expression "(char *)**(int **)(puVar16 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(puVar16 + 0x299e0)" * (pointer_expression "*(int **)(puVar16 + 0x299e0)" * (cast_expression "(int **)(puVar16 + 0x299e0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299e0)" ( (binary_expression "puVar16 + 0x299e0" identifier + number_literal) ))))))) )) (compound_statement "{\n    return iVar8;\n  }" { (return_statement "return iVar8;" return identifier ;) })) (expression_statement "pcVar18 = *(code **)(puVar16 + 0x299a4);" (assignment_expression "pcVar18 = *(code **)(puVar16 + 0x299a4)" identifier = (pointer_expression "*(code **)(puVar16 + 0x299a4)" * (cast_expression "(code **)(puVar16 + 0x299a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + 0x299a4)" ( (binary_expression "puVar16 + 0x299a4" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = pcStack_fc;" (assignment_expression "pcVar6 = pcStack_fc" identifier = identifier) ;) (expression_statement "(*pcVar18)();" (call_expression "(*pcVar18)()" (parenthesized_expression "(*pcVar18)" ( (pointer_expression "*pcVar18" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8);" (assignment_expression "pcStack_144 = (char *)**(undefined4 **)(pcVar18 + 0x295f8)" identifier = (cast_expression "(char *)**(undefined4 **)(pcVar18 + 0x295f8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar18 + 0x295f8)" * (pointer_expression "*(undefined4 **)(pcVar18 + 0x295f8)" * (cast_expression "(undefined4 **)(pcVar18 + 0x295f8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295f8)" ( (binary_expression "pcVar18 + 0x295f8" identifier + number_literal) ))))))) ;) (expression_statement "pcVar14 = pcVar1;" (assignment_expression "pcVar14 = pcVar1" identifier = identifier) ;) (expression_statement "pcStack_14c = pcVar6;" (assignment_expression "pcStack_14c = pcVar6" identifier = identifier) ;) (expression_statement "iStack_140 = iVar2;" (assignment_expression "iStack_140 = iVar2" identifier = identifier) ;) (expression_statement "iStack_13c = iVar7;" (assignment_expression "iStack_13c = iVar7" identifier = identifier) ;) (expression_statement "iStack_138 = iVar8;" (assignment_expression "iStack_138 = iVar8" identifier = identifier) ;) (expression_statement "pcStack_134 = pcVar5;" (assignment_expression "pcStack_134 = pcVar5" identifier = identifier) ;) (if_statement "if (*pcVar6 == '/') {\n    pcVar5 = (char *)0x0;\n  }\n  else if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }" if (parenthesized_expression "(*pcVar6 == '/')" ( (binary_expression "*pcVar6 == '/'" (pointer_expression "*pcVar6" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\n    pcVar5 = (char *)0x0;\n  }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }" else (if_statement "if (pcVar1 == (char *)0x0) {\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }\n  else {\n    pcVar5 = (char *)0x0;\n  }" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);\n    pcVar5 = pcStack_14c;\n    if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }\n  }" { (expression_statement "pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING);" (assignment_expression "pcStack_14c = canonicalize_filename_mode(pcVar6,CAN_MISSING)" identifier = (call_expression "canonicalize_filename_mode(pcVar6,CAN_MISSING)" identifier (argument_list "(pcVar6,CAN_MISSING)" ( identifier , identifier )))) ;) (expression_statement "pcVar5 = pcStack_14c;" (assignment_expression "pcVar5 = pcStack_14c" identifier = identifier) ;) (if_statement "if (pcStack_14c == (char *)0x0) {\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }" if (parenthesized_expression "(pcStack_14c == (char *)0x0)" ( (binary_expression "pcStack_14c == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(pcVar18 + 0x294c4))();\n      (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);\n                    /* WARNING: Subroutine does not return */\n      quotearg_style(shell_escape_always_quoting_style,pcVar6);\n    }" { (expression_statement "(**(code **)(pcVar18 + 0x294c4))();" (call_expression "(**(code **)(pcVar18 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar18 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar18 + 0x294c4)" * (pointer_expression "*(code **)(pcVar18 + 0x294c4)" * (cast_expression "(code **)(pcVar18 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x294c4)" ( (binary_expression "pcVar18 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5);" (call_expression "(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5)" (parenthesized_expression "(**(code **)(pcVar18 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar18 + 0x295c8)" * (pointer_expression "*(code **)(pcVar18 + 0x295c8)" * (cast_expression "(code **)(pcVar18 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295c8)" ( (binary_expression "pcVar18 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar18 + 0x290a4) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(pcVar18 + 0x290a4) + 0x5d20" (pointer_expression "*(int *)(pcVar18 + 0x290a4)" * (cast_expression "(int *)(pcVar18 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 0x290a4)" ( (binary_expression "pcVar18 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) comment (expression_statement "quotearg_style(shell_escape_always_quoting_style,pcVar6);" (call_expression "quotearg_style(shell_escape_always_quoting_style,pcVar6)" identifier (argument_list "(shell_escape_always_quoting_style,pcVar6)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n    pcVar5 = (char *)0x0;\n  }" else (compound_statement "{\n    pcVar5 = (char *)0x0;\n  }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))))) (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;) (if_statement "if (pppppcVar3 == (security_context_t ****)0x0) {\n    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);\n  }\n  else {\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }" if (parenthesized_expression "(pppppcVar3 == (security_context_t ****)0x0)" ( (binary_expression "pppppcVar3 == (security_context_t ****)0x0" identifier == (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n    iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n    pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);\n  }" { (expression_statement "iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0));" (assignment_expression "iVar2 = restorecon_private(pcStack_14c,SUB41(pcVar1,0))" identifier = (call_expression "restorecon_private(pcStack_14c,SUB41(pcVar1,0))" identifier (argument_list "(pcStack_14c,SUB41(pcVar1,0))" ( identifier , (call_expression "SUB41(pcVar1,0)" identifier (argument_list "(pcVar1,0)" ( identifier , number_literal ))) )))) ;) (expression_statement "(**(code **)(pcVar18 + 0x29600))(pcVar5);" (call_expression "(**(code **)(pcVar18 + 0x29600))(pcVar5)" (parenthesized_expression "(**(code **)(pcVar18 + 0x29600))" ( (pointer_expression "**(code **)(pcVar18 + 0x29600)" * (pointer_expression "*(code **)(pcVar18 + 0x29600)" * (cast_expression "(code **)(pcVar18 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x29600)" ( (binary_expression "pcVar18 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar5)" ( identifier ))) ;) (expression_statement "pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1);" (assignment_expression "pppppcVar3 = (security_context_t ****)(uint)(iVar2 != -1)" identifier = (cast_expression "(security_context_t ****)(uint)(iVar2 != -1)" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(uint)(iVar2 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar2 != -1)" ( (binary_expression "iVar2 != -1" identifier != number_literal) ))))) ;) }) (else_clause "else {\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }" else (compound_statement "{\n    sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);\n    iVar2 = *(int *)(pcVar18 + 0x291b0);\n    while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }\n    piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();\n    pcVar6 = (char *)*piVar10;\n    if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }\n    iVar2 = fts_close(sp);\n    pcVar14 = (char *)0x5;\n    if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }\n    (**(code **)(pcVar18 + 0x29600))(pcVar5);\n  }" { (expression_statement "sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0);" (assignment_expression "sp = xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0)" identifier = (call_expression "xfts_open(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0)" identifier (argument_list "(&pcStack_14c,0x10,(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0)" ( (pointer_expression "&pcStack_14c" & identifier) , number_literal , (cast_expression "(_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *)0x0" ( (type_descriptor "_func_int_FTSENT_ptr_ptr_FTSENT_ptr_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) )))) ;) (expression_statement "iVar2 = *(int *)(pcVar18 + 0x291b0);" (assignment_expression "iVar2 = *(int *)(pcVar18 + 0x291b0)" identifier = (pointer_expression "*(int *)(pcVar18 + 0x291b0)" * (cast_expression "(int *)(pcVar18 + 0x291b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 0x291b0)" ( (binary_expression "pcVar18 + 0x291b0" identifier + number_literal) ))))) ;) (while_statement "while (pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0) {\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }" while (parenthesized_expression "(pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0)" ( (comma_expression "pFVar9 = fts_read(sp), pFVar9 != (FTSENT *)0x0" (assignment_expression "pFVar9 = fts_read(sp)" identifier = (call_expression "fts_read(sp)" identifier (argument_list "(sp)" ( identifier )))) , (binary_expression "pFVar9 != (FTSENT *)0x0" identifier != (cast_expression "(FTSENT *)0x0" ( (type_descriptor "FTSENT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n      iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);\n      pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));\n    }" { (expression_statement "iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path);" (assignment_expression "iVar7 = (*(code *)(iVar2 + -0x1730))(sp->fts_path)" identifier = (call_expression "(*(code *)(iVar2 + -0x1730))(sp->fts_path)" (parenthesized_expression "(*(code *)(iVar2 + -0x1730))" ( (pointer_expression "*(code *)(iVar2 + -0x1730)" * (cast_expression "(code *)(iVar2 + -0x1730)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x1730)" ( (binary_expression "iVar2 + -0x1730" identifier + number_literal) )))) )) (argument_list "(sp->fts_path)" ( (field_expression "sp->fts_path" identifier -> field_identifier) )))) ;) (expression_statement "pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1));" (assignment_expression "pppppcVar3 = (security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1))" identifier = (cast_expression "(security_context_t ****)((uint)pppppcVar3 & (uint)(iVar7 != -1))" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "((uint)pppppcVar3 & (uint)(iVar7 != -1))" ( (binary_expression "(uint)pppppcVar3 & (uint)(iVar7 != -1)" (cast_expression "(uint)pppppcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & (call_expression "(uint)(iVar7 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )))) )))) ;) })) (expression_statement "piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))();" (assignment_expression "piVar10 = (int *)(**(code **)(pcVar18 + 0x294c4))()" identifier = (cast_expression "(int *)(**(code **)(pcVar18 + 0x294c4))()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar18 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar18 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar18 + 0x294c4)" * (pointer_expression "*(code **)(pcVar18 + 0x294c4)" * (cast_expression "(code **)(pcVar18 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x294c4)" ( (binary_expression "pcVar18 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "pcVar6 = (char *)*piVar10;" (assignment_expression "pcVar6 = (char *)*piVar10" identifier = (cast_expression "(char *)*piVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar10" * identifier))) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);\n      pppppcVar3 = (security_context_t ****)0x0;\n      pcVar1 = pcVar6;\n    }" { (expression_statement "uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5);" (assignment_expression "uVar12 = (**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5)" identifier = (call_expression "(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5)" (parenthesized_expression "(**(code **)(pcVar18 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar18 + 0x295c8)" * (pointer_expression "*(code **)(pcVar18 + 0x295c8)" * (cast_expression "(code **)(pcVar18 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295c8)" ( (binary_expression "pcVar18 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar18 + 0x290a4) + 0x5d38,5)" ( number_literal , (binary_expression "*(int *)(pcVar18 + 0x290a4) + 0x5d38" (pointer_expression "*(int *)(pcVar18 + 0x290a4)" * (cast_expression "(int *)(pcVar18 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 0x290a4)" ( (binary_expression "pcVar18 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "(**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12);" (call_expression "(**(code **)(pcVar18 + 0x29558))(0,pcVar6,uVar12)" (parenthesized_expression "(**(code **)(pcVar18 + 0x29558))" ( (pointer_expression "**(code **)(pcVar18 + 0x29558)" * (pointer_expression "*(code **)(pcVar18 + 0x29558)" * (cast_expression "(code **)(pcVar18 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x29558)" ( (binary_expression "pcVar18 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0,pcVar6,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "pppppcVar3 = (security_context_t ****)0x0;" (assignment_expression "pppppcVar3 = (security_context_t ****)0x0" identifier = (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "pcVar1 = pcVar6;" (assignment_expression "pcVar1 = pcVar6" identifier = identifier) ;) })) (expression_statement "iVar2 = fts_close(sp);" (assignment_expression "iVar2 = fts_close(sp)" identifier = (call_expression "fts_close(sp)" identifier (argument_list "(sp)" ( identifier )))) ;) (expression_statement "pcVar14 = (char *)0x5;" (assignment_expression "pcVar14 = (char *)0x5" identifier = (cast_expression "(char *)0x5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != 0) {\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar1 = (char *)*piVar10;\n      pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);\n      (**(code **)(pcVar18 + 0x29558))(0);\n      pppppcVar3 = (security_context_t ****)0x0;\n    }" { (expression_statement "pcVar1 = (char *)*piVar10;" (assignment_expression "pcVar1 = (char *)*piVar10" identifier = (cast_expression "(char *)*piVar10" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar10" * identifier))) ;) (expression_statement "pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48);" (assignment_expression "pcVar14 = (char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48)" identifier = (cast_expression "(char *)(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar18 + 0x295c8))(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48)" (parenthesized_expression "(**(code **)(pcVar18 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar18 + 0x295c8)" * (pointer_expression "*(code **)(pcVar18 + 0x295c8)" * (cast_expression "(code **)(pcVar18 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295c8)" ( (binary_expression "pcVar18 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar18 + 0x290a4) + 0x5d48)" ( number_literal , (binary_expression "*(int *)(pcVar18 + 0x290a4) + 0x5d48" (pointer_expression "*(int *)(pcVar18 + 0x290a4)" * (cast_expression "(int *)(pcVar18 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 0x290a4)" ( (binary_expression "pcVar18 + 0x290a4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "(**(code **)(pcVar18 + 0x29558))(0);" (call_expression "(**(code **)(pcVar18 + 0x29558))(0)" (parenthesized_expression "(**(code **)(pcVar18 + 0x29558))" ( (pointer_expression "**(code **)(pcVar18 + 0x29558)" * (pointer_expression "*(code **)(pcVar18 + 0x29558)" * (cast_expression "(code **)(pcVar18 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x29558)" ( (binary_expression "pcVar18 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (expression_statement "pppppcVar3 = (security_context_t ****)0x0;" (assignment_expression "pppppcVar3 = (security_context_t ****)0x0" identifier = (cast_expression "(security_context_t ****)0x0" ( (type_descriptor "security_context_t ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) })) (expression_statement "(**(code **)(pcVar18 + 0x29600))(pcVar5);" (call_expression "(**(code **)(pcVar18 + 0x29600))(pcVar5)" (parenthesized_expression "(**(code **)(pcVar18 + 0x29600))" ( (pointer_expression "**(code **)(pcVar18 + 0x29600)" * (pointer_expression "*(code **)(pcVar18 + 0x29600)" * (cast_expression "(code **)(pcVar18 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x29600)" ( (binary_expression "pcVar18 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar5)" ( identifier ))) ;) }))) (if_statement "if (pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)) {\n    pcVar17 = *(code **)(pcVar18 + 0x295bc);\n    pcVar6 = pcStack_144;\n    (*pcVar17)();\n    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));\n    if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }\n    return iVar2;\n  }" if (parenthesized_expression "(pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8))" ( (binary_expression "pcStack_144 != (char *)**(int **)(pcVar18 + 0x295f8)" identifier != (cast_expression "(char *)**(int **)(pcVar18 + 0x295f8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(pcVar18 + 0x295f8)" * (pointer_expression "*(int **)(pcVar18 + 0x295f8)" * (cast_expression "(int **)(pcVar18 + 0x295f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295f8)" ( (binary_expression "pcVar18 + 0x295f8" identifier + number_literal) ))))))) )) (compound_statement "{\n    pcVar17 = *(code **)(pcVar18 + 0x295bc);\n    pcVar6 = pcStack_144;\n    (*pcVar17)();\n    iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));\n    if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }\n    return iVar2;\n  }" { (expression_statement "pcVar17 = *(code **)(pcVar18 + 0x295bc);" (assignment_expression "pcVar17 = *(code **)(pcVar18 + 0x295bc)" identifier = (pointer_expression "*(code **)(pcVar18 + 0x295bc)" * (cast_expression "(code **)(pcVar18 + 0x295bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar18 + 0x295bc)" ( (binary_expression "pcVar18 + 0x295bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = pcStack_144;" (assignment_expression "pcVar6 = pcStack_144" identifier = identifier) ;) (expression_statement "(*pcVar17)();" (call_expression "(*pcVar17)()" (parenthesized_expression "(*pcVar17)" ( (pointer_expression "*pcVar17" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068));" (assignment_expression "iVar2 = qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068))" identifier = (call_expression "qcopy_acl(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068))" identifier (argument_list "(pcVar6,(int)pcVar1,pcVar14,(int)in_a3,(mode_t)(pcVar18 + 0x31068))" ( identifier , (cast_expression "(int)pcVar1" ( (type_descriptor "int" primitive_type) ) identifier) , identifier , (cast_expression "(int)in_a3" ( (type_descriptor "int" primitive_type) ) identifier) , (call_expression "(mode_t)(pcVar18 + 0x31068)" (parenthesized_expression "(mode_t)" ( identifier )) (argument_list "(pcVar18 + 0x31068)" ( (binary_expression "pcVar18 + 0x31068" identifier + number_literal) ))) )))) ;) (if_statement "if (iVar2 == -2) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }\n    else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }" if (parenthesized_expression "(iVar2 == -2)" ( (binary_expression "iVar2 == -2" identifier == number_literal) )) (compound_statement "{\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar12 = *puVar11;\n      pcVar1 = quote(pcVar6);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);\n    }" { (expression_statement "puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();" (assignment_expression "puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar17 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar17 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar17 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar17 + 0x291fc)" * (pointer_expression "*(code **)(pcVar17 + 0x291fc)" * (cast_expression "(code **)(pcVar17 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0x291fc)" ( (binary_expression "pcVar17 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar12 = *puVar11;" (assignment_expression "uVar12 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (expression_statement "pcVar1 = quote(pcVar6);" (assignment_expression "pcVar1 = quote(pcVar6)" identifier = (call_expression "quote(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1);" (call_expression "(**(code **)(pcVar17 + 0x29290))(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1)" (parenthesized_expression "(**(code **)(pcVar17 + 0x29290))" ( (pointer_expression "**(code **)(pcVar17 + 0x29290)" * (pointer_expression "*(code **)(pcVar17 + 0x29290)" * (cast_expression "(code **)(pcVar17 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0x29290)" ( (binary_expression "pcVar17 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar12,*(int *)(pcVar17 + 0x28ddc) + 0x57f4,pcVar1)" ( number_literal , identifier , (binary_expression "*(int *)(pcVar17 + 0x28ddc) + 0x57f4" (pointer_expression "*(int *)(pcVar17 + 0x28ddc)" * (cast_expression "(int *)(pcVar17 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0x28ddc)" ( (binary_expression "pcVar17 + 0x28ddc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) }) (else_clause "else if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }" else (if_statement "if (iVar2 == -1) {\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n      puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();\n      uVar15 = *puVar11;\n      uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);\n      pcVar1 = quote(pcVar14);\n      (**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);\n    }" { (expression_statement "puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))();" (assignment_expression "puVar11 = (undefined4 *)(**(code **)(pcVar17 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar17 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar17 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar17 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar17 + 0x291fc)" * (pointer_expression "*(code **)(pcVar17 + 0x291fc)" * (cast_expression "(code **)(pcVar17 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0x291fc)" ( (binary_expression "pcVar17 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar15 = *puVar11;" (assignment_expression "uVar15 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (expression_statement "uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5);" (assignment_expression "uVar12 = (**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5)" identifier = (call_expression "(**(code **)(pcVar17 + 0x29300))(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5)" (parenthesized_expression "(**(code **)(pcVar17 + 0x29300))" ( (pointer_expression "**(code **)(pcVar17 + 0x29300)" * (pointer_expression "*(code **)(pcVar17 + 0x29300)" * (cast_expression "(code **)(pcVar17 + 0x29300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0x29300)" ( (binary_expression "pcVar17 + 0x29300" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar17 + 0x28ddc) + 0x5a30,5)" ( number_literal , (binary_expression "*(int *)(pcVar17 + 0x28ddc) + 0x5a30" (pointer_expression "*(int *)(pcVar17 + 0x28ddc)" * (cast_expression "(int *)(pcVar17 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0x28ddc)" ( (binary_expression "pcVar17 + 0x28ddc" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "pcVar1 = quote(pcVar14);" (assignment_expression "pcVar1 = quote(pcVar14)" identifier = (call_expression "quote(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1);" (call_expression "(**(code **)(pcVar17 + 0x29290))(0,uVar15,uVar12,pcVar1)" (parenthesized_expression "(**(code **)(pcVar17 + 0x29290))" ( (pointer_expression "**(code **)(pcVar17 + 0x29290)" * (pointer_expression "*(code **)(pcVar17 + 0x29290)" * (cast_expression "(code **)(pcVar17 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0x29290)" ( (binary_expression "pcVar17 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar15,uVar12,pcVar1)" ( number_literal , identifier , identifier , identifier ))) ;) })))) (return_statement "return iVar2;" return identifier ;) })) (return_statement "return (int)pppppcVar3;" return (cast_expression "(int)pppppcVar3" ( (type_descriptor "int" primitive_type) ) identifier) ;) })))
(translation_unit "undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)\n\n{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}\n\n" (function_definition "undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)\n\n{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" type_identifier (pointer_declarator "**** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "*** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "** FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (pointer_declarator "* FUN_0001e8d0(undefined4 ****param_1,int param_2)" * (function_declarator "FUN_0001e8d0(undefined4 ****param_1,int param_2)" identifier (parameter_list "(undefined4 ****param_1,int param_2)" ( (parameter_declaration "undefined4 ****param_1" type_identifier (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier))))) , (parameter_declaration "int param_2" primitive_type identifier) ))))))) (compound_statement "{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 ****ppppuVar2;" type_identifier (pointer_declarator "****ppppuVar2" * (pointer_declarator "***ppppuVar2" * (pointer_declarator "**ppppuVar2" * (pointer_declarator "*ppppuVar2" * identifier)))) ;) (declaration "undefined4 ****ppppuVar3;" type_identifier (pointer_declarator "****ppppuVar3" * (pointer_declarator "***ppppuVar3" * (pointer_declarator "**ppppuVar3" * (pointer_declarator "*ppppuVar3" * identifier)))) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "undefined4 ****ppppuVar8;" type_identifier (pointer_declarator "****ppppuVar8" * (pointer_declarator "***ppppuVar8" * (pointer_declarator "**ppppuVar8" * (pointer_declarator "*ppppuVar8" * identifier)))) ;) (declaration "uint *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined4 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "undefined4 uVar13;" type_identifier identifier ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined4 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "char *pcVar16;" primitive_type (pointer_declarator "*pcVar16" * identifier) ;) (declaration "undefined4 ****unaff_s1;" type_identifier (pointer_declarator "****unaff_s1" * (pointer_declarator "***unaff_s1" * (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * identifier)))) ;) (declaration "int unaff_s2;" primitive_type identifier ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "char *pcStack_14c;" primitive_type (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "int iStack_144;" primitive_type identifier ;) (declaration "int iStack_140;" primitive_type identifier ;) (declaration "int iStack_13c;" primitive_type identifier ;) (declaration "undefined4 ***pppuStack_138;" type_identifier (pointer_declarator "***pppuStack_138" * (pointer_declarator "**pppuStack_138" * (pointer_declarator "*pppuStack_138" * identifier))) ;) (declaration "char *pcStack_134;" primitive_type (pointer_declarator "*pcStack_134" * identifier) ;) (declaration "undefined4 uStack_10c;" type_identifier identifier ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "undefined4 uStack_104;" type_identifier identifier ;) (declaration "undefined4 ***pppuStack_100;" type_identifier (pointer_declarator "***pppuStack_100" * (pointer_declarator "**pppuStack_100" * (pointer_declarator "*pppuStack_100" * identifier))) ;) (declaration "char *pcStack_fc;" primitive_type (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "undefined4 ***pppuStack_f4;" type_identifier (pointer_declarator "***pppuStack_f4" * (pointer_declarator "**pppuStack_f4" * (pointer_declarator "*pppuStack_f4" * identifier))) ;) (declaration "undefined4 ***pppuStack_f0;" type_identifier (pointer_declarator "***pppuStack_f0" * (pointer_declarator "**pppuStack_f0" * (pointer_declarator "*pppuStack_f0" * identifier))) ;) (declaration "int iStack_ec;" primitive_type identifier ;) (declaration "int iStack_e8;" primitive_type identifier ;) (declaration "code *pcStack_e4;" type_identifier (pointer_declarator "*pcStack_e4" * identifier) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 ***local_c4;" type_identifier (pointer_declarator "***local_c4" * (pointer_declarator "**local_c4" * (pointer_declarator "*local_c4" * identifier))) ;) (declaration "undefined1 auStack_c0 [24];" type_identifier (array_declarator "auStack_c0 [24]" identifier [ number_literal ]) ;) (declaration "undefined4 ***local_a8;" type_identifier (pointer_declarator "***local_a8" * (pointer_declarator "**local_a8" * (pointer_declarator "*local_a8" * identifier))) ;) (declaration "char *local_1c;" primitive_type (pointer_declarator "*local_1c" * identifier) ;) (expression_statement "local_1c = *(char **)PTR___stack_chk_guard_000486a0;" (assignment_expression "local_1c = *(char **)PTR___stack_chk_guard_000486a0" identifier = (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = (undefined4 ****)0x0;" (assignment_expression "local_c4 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (if_statement "if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }" { (expression_statement "ppppuVar8 = (undefined4 ****)0x20000;" (assignment_expression "ppppuVar8 = (undefined4 ****)0x20000" identifier = (cast_expression "(undefined4 ****)0x20000" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)()" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_open64_000485a0)()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_open64_000485a0)()" (parenthesized_expression "(*(code *)PTR_open64_000485a0)" ( (pointer_expression "*(code *)PTR_open64_000485a0" * (cast_expression "(code *)PTR_open64_000485a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" identifier = identifier) ;) (if_statement "if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" if (parenthesized_expression "(unaff_s1 == (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 == (undefined4 ****)0xffffffff" identifier == (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" { (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)()" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }" if (parenthesized_expression "(*piVar11 == 0x5a)" ( (binary_expression "*piVar11 == 0x5a" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }" { (expression_statement "ppppuVar8 = param_1;" (assignment_expression "ppppuVar8 = param_1" identifier = identifier) ;) (expression_statement "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);" (assignment_expression "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" identifier = (call_expression "(*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" (parenthesized_expression "(*(code *)PTR___lxstat64_0004848c)" ( (pointer_expression "*(code *)PTR___lxstat64_0004848c" * (cast_expression "(code *)PTR___lxstat64_0004848c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3,param_1,auStack_c0)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (-1 < iVar1) goto LAB_0001e9d0;" if (parenthesized_expression "(-1 < iVar1)" ( (binary_expression "-1 < iVar1" number_literal < identifier) )) (goto_statement "goto LAB_0001e9d0;" goto statement_identifier ;)) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        unaff_s2 = 0;\n      }" else (compound_statement "{\n        unaff_s2 = 0;\n      }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (goto_statement "goto LAB_0001eb5c;" goto statement_identifier ;) })) (expression_statement "ppppuVar8 = unaff_s1;" (assignment_expression "ppppuVar8 = unaff_s1" identifier = identifier) ;) (expression_statement "iVar1 = (*(code *)PTR___fxstat64_00048628)(3);" (assignment_expression "iVar1 = (*(code *)PTR___fxstat64_00048628)(3)" identifier = (call_expression "(*(code *)PTR___fxstat64_00048628)(3)" (parenthesized_expression "(*(code *)PTR___fxstat64_00048628)" ( (pointer_expression "*(code *)PTR___fxstat64_00048628" * (cast_expression "(code *)PTR___fxstat64_00048628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(3)" ( number_literal )))) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (if_statement "if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }" { (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (labeled_statement "LAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);" statement_identifier : (expression_statement "(*(code *)PTR_close_00048480)(unaff_s1);" (call_expression "(*(code *)PTR_close_00048480)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_close_00048480)" ( (pointer_expression "*(code *)PTR_close_00048480" * (cast_expression "(code *)PTR_close_00048480" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))) ;)) }) (else_clause "else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" else (compound_statement "{\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" { (labeled_statement "LAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" statement_identifier : (expression_statement "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" (assignment_expression "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" identifier = (call_expression "(*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" (parenthesized_expression "(*(code *)PTR_matchpathcon_00048618)" ( (pointer_expression "*(code *)PTR_matchpathcon_00048618" * (cast_expression "(code *)PTR_matchpathcon_00048618" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,local_a8,&local_c8)" ( identifier , identifier , (pointer_expression "&local_c8" & identifier) )))) ;)) (if_statement "if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }" { (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(local_c8)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c8)" ( identifier ))))) ;) (if_statement "if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" if (parenthesized_expression "(*piVar11 == 2)" ( (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" else (compound_statement "{\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;" statement_identifier : (expression_statement "ppppuVar8 = (undefined4 ****)local_a8;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_a8" identifier = (cast_expression "(undefined4 ****)local_a8" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;)) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) }) (else_clause "else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" else (compound_statement "{\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" { (expression_statement "unaff_s2 = (*(code *)PTR_context_new_0004868c)();" (assignment_expression "unaff_s2 = (*(code *)PTR_context_new_0004868c)()" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)()" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" if (parenthesized_expression "(unaff_s2 == 0)" ( (binary_expression "unaff_s2 == 0" identifier == number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;) })) (expression_statement "ppppuVar8 = &local_c4;" (assignment_expression "ppppuVar8 = &local_c4" identifier = (pointer_expression "&local_c4" & identifier)) ;) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" { (expression_statement "iVar1 = rpl_fgetfilecon(unaff_s1);" (assignment_expression "iVar1 = rpl_fgetfilecon(unaff_s1)" identifier = (call_expression "rpl_fgetfilecon(unaff_s1)" identifier (argument_list "(unaff_s1)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" else (compound_statement "{\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier )))) ;) (if_statement "if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" if (parenthesized_expression "(unaff_s3 == 0)" ( (binary_expression "unaff_s3 == 0" identifier == number_literal) )) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" else (compound_statement "{\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (expression_statement "ppppuVar3 = ppppuVar8;" (assignment_expression "ppppuVar3 = ppppuVar8" identifier = identifier) ;) (if_statement "if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;" if (parenthesized_expression "(ppppuVar8 != (undefined4 ****)0x0)" ( (binary_expression "ppppuVar8 != (undefined4 ****)0x0" identifier != (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (goto_statement "goto LAB_0001ea64;" goto statement_identifier ;)) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }))) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "iVar1 = rpl_lgetfilecon(param_1);" (assignment_expression "iVar1 = rpl_lgetfilecon(param_1)" identifier = (call_expression "rpl_lgetfilecon(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n          unaff_s3 = 0;\n        }" { (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" else (compound_statement "{\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" { (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" identifier = (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" ( (pointer_expression "*(code *)PTR_context_new_0004868c" * (cast_expression "(code *)PTR_context_new_0004868c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier )))) ;) (if_statement "if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" if (parenthesized_expression "((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0))" ( (binary_expression "(unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" (parenthesized_expression "(unaff_s3 != 0)" ( (binary_expression "unaff_s3 != 0" identifier != number_literal) )) && (parenthesized_expression "(ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" ( (comma_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" ( (pointer_expression "*(code *)PTR_context_type_get_000486c8" * (cast_expression "(code *)PTR_context_type_get_000486c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) , (comma_expression "ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = ppppuVar3" identifier = identifier) , (binary_expression "ppppuVar3 != (undefined4 ****)0x0" identifier != (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (compound_statement "{\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" { (labeled_statement "LAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" statement_identifier : (expression_statement "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" (assignment_expression "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3)" identifier = (call_expression "(*(code *)PTR_context_type_set_00048658)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_type_set_00048658)" ( (pointer_expression "*(code *)PTR_context_type_set_00048658" * (cast_expression "(code *)PTR_context_type_set_00048658" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier )))) ;)) (expression_statement "local_a8 = ppppuVar3;" (assignment_expression "local_a8 = ppppuVar3" identifier = identifier) ;) (if_statement "if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;" if (parenthesized_expression "((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0))" ( (binary_expression "(iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) || (parenthesized_expression "(ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" ( (comma_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_context_str_0004849c)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_str_0004849c)" ( (pointer_expression "*(code *)PTR_context_str_0004849c" * (cast_expression "(code *)PTR_context_str_0004849c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))))) , (comma_expression "local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "local_a8 = ppppuVar3" identifier = identifier) , (binary_expression "ppppuVar8 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)))) ))) )) (goto_statement "goto LAB_0001eb3c;" goto statement_identifier ;)) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" if (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" ( (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" identifier != (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_fsetfilecon_00048528)" ( (pointer_expression "*(code *)PTR_fsetfilecon_00048528" * (cast_expression "(code *)PTR_fsetfilecon_00048528" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier ))))) ;) (goto_statement "goto LAB_0001eb48;" goto statement_identifier ;) })) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)(param_1)" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" identifier = identifier) ;) })) }))) }))) }))) (labeled_statement "LAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s2);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s3);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" ( (pointer_expression "*(code *)PTR_context_free_000485d0" * (cast_expression "(code *)PTR_context_free_000485d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c8);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c8)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c8)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier ))) ;) }) (else_clause "else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" else (compound_statement "{\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" { (expression_statement "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);" (assignment_expression "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" identifier = (call_expression "(*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" (parenthesized_expression "(*(code *)PTR_getfscreatecon_000484ac)" ( (pointer_expression "*(code *)PTR_getfscreatecon_000484ac" * (cast_expression "(code *)PTR_getfscreatecon_000484ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_c4)" ( (pointer_expression "&local_c4" & identifier) )))) ;) (expression_statement "ppppuVar8 = (undefined4 ****)local_c4;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_c4" identifier = (cast_expression "(undefined4 ****)local_c4" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (if_statement "if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" else (if_statement "if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" if (parenthesized_expression "((undefined4 ****)local_c4 == (undefined4 ****)0x0)" ( (binary_expression "(undefined4 ****)local_c4 == (undefined4 ****)0x0" (cast_expression "(undefined4 ****)local_c4" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier) == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);" (assignment_expression "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" identifier = (cast_expression "(undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0004856c)(param_1)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" ( (pointer_expression "*(code *)PTR___errno_location_0004856c" * (cast_expression "(code *)PTR___errno_location_0004856c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "*puVar6 = 0x3d;" (assignment_expression "*puVar6 = 0x3d" (pointer_expression "*puVar6" * identifier) = number_literal) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" else (compound_statement "{\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" { (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" identifier = (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(*(code *)PTR_lsetfilecon_000486b4)()" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" ( (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" * (cast_expression "(code *)PTR_lsetfilecon_000486b4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" ( (pointer_expression "*(code *)PTR_freecon_000484d8" * (cast_expression "(code *)PTR_freecon_000484d8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_c4)" ( identifier ))) ;) }))))) }))) (if_statement "if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }" if (parenthesized_expression "(local_1c == *(char **)PTR___stack_chk_guard_000486a0)" ( (binary_expression "local_1c == *(char **)PTR___stack_chk_guard_000486a0" identifier == (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" * (cast_expression "(char **)PTR___stack_chk_guard_000486a0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return ppppuVar2;\n  }" { (return_statement "return ppppuVar2;" return identifier ;) })) (expression_statement "pcVar20 = defaultcon;" (assignment_expression "pcVar20 = defaultcon" identifier = identifier) ;) (expression_statement "pcVar14 = local_1c;" (assignment_expression "pcVar14 = local_1c" identifier = identifier) ;) (expression_statement "puVar18 = PTR___stack_chk_fail_00048664;" (assignment_expression "puVar18 = PTR___stack_chk_fail_00048664" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00048664)();" (call_expression "(*(code *)PTR___stack_chk_fail_00048664)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00048664)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00048664" * (cast_expression "(code *)PTR___stack_chk_fail_00048664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);" (assignment_expression "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" * (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" * (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e0)" ( (binary_expression "puVar18 + 0x299e0" identifier + number_literal) ))))))) ;) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" identifier = number_literal) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "pppuStack_f4 = ppppuVar2;" (assignment_expression "pppuStack_f4 = ppppuVar2" identifier = identifier) ;) (expression_statement "pppuStack_f0 = unaff_s1;" (assignment_expression "pppuStack_f0 = unaff_s1" identifier = identifier) ;) (expression_statement "iStack_ec = unaff_s2;" (assignment_expression "iStack_ec = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_e8 = unaff_s3;" (assignment_expression "iStack_e8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_e4 = pcVar20;" (assignment_expression "pcStack_e4 = pcVar20" identifier = identifier) ;) (if_statement "if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" if (parenthesized_expression "(*pcVar14 == '/')" ( (binary_expression "*pcVar14 == '/'" (pointer_expression "*pcVar14" * identifier) == (char_literal "'/'" ' character ')) )) (compound_statement "{\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }" { (labeled_statement "LAB_0001efc4:\n    pcVar4 = (char *)0x0;" statement_identifier : (expression_statement "pcVar4 = (char *)0x0;" (assignment_expression "pcVar4 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar16 = pcVar14;" (assignment_expression "pcVar16 = pcVar14" identifier = identifier) ;) }) (else_clause "else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" else (compound_statement "{\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" { (expression_statement "pcVar4 = (char *)canonicalize_filename_mode();" (assignment_expression "pcVar4 = (char *)canonicalize_filename_mode()" identifier = (cast_expression "(char *)canonicalize_filename_mode()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "canonicalize_filename_mode()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pcVar16 = pcVar4;" (assignment_expression "pcVar16 = pcVar4" identifier = identifier) ;) (if_statement "if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" if (parenthesized_expression "(pcVar4 == (char *)0x0)" ( (binary_expression "pcVar4 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))()" identifier = (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x298ac))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x298ac))()" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" ( (pointer_expression "**(code **)(puVar18 + 0x298ac)" * (pointer_expression "*(code **)(puVar18 + 0x298ac)" * (cast_expression "(code **)(puVar18 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298ac)" ( (binary_expression "puVar18 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);" (assignment_expression "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" identifier = (cast_expression "(undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (parenthesized_expression "(**(code **)(puVar18 + 0x299b0))" ( (pointer_expression "**(code **)(puVar18 + 0x299b0)" * (pointer_expression "*(code **)(puVar18 + 0x299b0)" * (cast_expression "(code **)(puVar18 + 0x299b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299b0)" ( (binary_expression "puVar18 + 0x299b0" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(puVar18 + 0x2948c) + 0x5d20" (pointer_expression "*(int *)(puVar18 + 0x2948c)" * (cast_expression "(int *)(puVar18 + 0x2948c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + 0x2948c)" ( (binary_expression "puVar18 + 0x2948c" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" identifier = (call_expression "quotearg_style(4,pcVar14)" identifier (argument_list "(4,pcVar14)" ( number_literal , identifier )))) ;) (expression_statement "pcVar14 = (char *)0x1;" (assignment_expression "pcVar14 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);" (call_expression "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12)" (parenthesized_expression "(**(code **)(puVar18 + 0x29940))" ( (pointer_expression "**(code **)(puVar18 + 0x29940)" * (pointer_expression "*(code **)(puVar18 + 0x29940)" * (cast_expression "(code **)(puVar18 + 0x29940)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29940)" ( (binary_expression "puVar18 + 0x29940" identifier + number_literal) ))))) )) (argument_list "(1,uVar13,ppppuVar8,uVar12)" ( number_literal , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0001efc4;" goto statement_identifier ;) })) }))) (expression_statement "puVar6 = &uStack_10c;" (assignment_expression "puVar6 = &uStack_10c" identifier = (pointer_expression "&uStack_10c" & identifier)) ;) (expression_statement "ppppuVar2 = ppppuVar8;" (assignment_expression "ppppuVar2 = ppppuVar8" identifier = identifier) ;) (expression_statement "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16)" identifier = (call_expression "(**(code **)(puVar18 + 0x29958))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x29958))" ( (pointer_expression "**(code **)(puVar18 + 0x29958)" * (pointer_expression "*(code **)(puVar18 + 0x29958)" * (cast_expression "(code **)(puVar18 + 0x29958)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29958)" ( (binary_expression "puVar18 + 0x29958" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier )))) ;) (if_statement "if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" if (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) (compound_statement "{\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }" { (expression_statement "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" identifier = (cast_expression "(int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x298ac))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" ( (pointer_expression "**(code **)(puVar18 + 0x298ac)" * (pointer_expression "*(code **)(puVar18 + 0x298ac)" * (cast_expression "(code **)(puVar18 + 0x298ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298ac)" ( (binary_expression "puVar18 + 0x298ac" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))))) ;) (if_statement "if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" if (parenthesized_expression "(*piVar11 == 2)" ( (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" else (compound_statement "{\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }) (else_clause "else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" else (compound_statement "{\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" { (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" identifier = number_literal) ;) (expression_statement "pppuStack_100 = (undefined4 ****)0x0;" (assignment_expression "pppuStack_100 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "iVar1 = dir_name();" (assignment_expression "iVar1 = dir_name()" identifier = (call_expression "dir_name()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" { (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104)" identifier = (call_expression "(**(code **)(puVar18 + 0x29950))(&uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29950))" ( (pointer_expression "**(code **)(puVar18 + 0x29950)" * (pointer_expression "*(code **)(puVar18 + 0x29950)" * (cast_expression "(code **)(puVar18 + 0x29950)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29950)" ( (binary_expression "puVar18 + 0x29950" identifier + number_literal) ))))) )) (argument_list "(&uStack_104)" ( (pointer_expression "&uStack_104" & identifier) )))) ;) (expression_statement "ppppuVar2 = &pppuStack_100;" (assignment_expression "ppppuVar2 = &pppuStack_100" identifier = (pointer_expression "&pppuStack_100" & identifier)) ;) (if_statement "if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" if (parenthesized_expression "(((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0))" ( (binary_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" (parenthesized_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5))" ( (binary_expression "(-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" (parenthesized_expression "(-1 < iVar5)" ( (binary_expression "-1 < iVar5" number_literal < identifier) )) && (parenthesized_expression "(iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" ( (comma_expression "iVar5 = rpl_getfilecon(iVar1), -1 < iVar5" (assignment_expression "iVar5 = rpl_getfilecon(iVar1)" identifier = (call_expression "rpl_getfilecon(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) , (binary_expression "-1 < iVar5" number_literal < identifier)) ))) )) && (parenthesized_expression "(puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" ( (comma_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" identifier = (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" (parenthesized_expression "(**(code **)(puVar18 + 0x297c4))" ( (pointer_expression "**(code **)(puVar18 + 0x297c4)" * (pointer_expression "*(code **)(puVar18 + 0x297c4)" * (cast_expression "(code **)(puVar18 + 0x297c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x297c4)" ( (binary_expression "puVar18 + 0x297c4" identifier + number_literal) ))))) )) (argument_list "(ppppuVar8)" ( identifier ))))) , (binary_expression "puVar6 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" { (expression_statement "ppppuVar2 = (undefined4 ****)pppuStack_100;" (assignment_expression "ppppuVar2 = (undefined4 ****)pppuStack_100" identifier = (cast_expression "(undefined4 ****)pppuStack_100" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" identifier = (call_expression "(**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29830))" ( (pointer_expression "**(code **)(puVar18 + 0x29830)" * (pointer_expression "*(code **)(puVar18 + 0x29830)" * (cast_expression "(code **)(puVar18 + 0x29830)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29830)" ( (binary_expression "puVar18 + 0x29830" identifier + number_literal) ))))) )) (argument_list "(uStack_104,pppuStack_100,puVar6,&uStack_108)" ( identifier , identifier , identifier , (pointer_expression "&uStack_108" & identifier) )))) ;) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(pppuStack_100)" ( identifier ))) ;) (if_statement "if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" if (parenthesized_expression "(iVar5 < 0)" ( (binary_expression "iVar5 < 0" identifier < number_literal) )) (compound_statement "{\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" else (compound_statement "{\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" { (expression_statement "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c)" identifier = (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" ( (pointer_expression "**(code **)(puVar18 + 0x299cc)" * (pointer_expression "*(code **)(puVar18 + 0x299cc)" * (cast_expression "(code **)(puVar18 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299cc)" ( (binary_expression "puVar18 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier )))) ;) (if_statement "if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) }) (else_clause "else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" else (compound_statement "{\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" { (expression_statement "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108)" identifier = (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" ( (pointer_expression "**(code **)(puVar18 + 0x299cc)" * (pointer_expression "*(code **)(puVar18 + 0x299cc)" * (cast_expression "(code **)(puVar18 + 0x299cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299cc)" ( (binary_expression "puVar18 + 0x299cc" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" else (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" { (expression_statement "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);" (assignment_expression "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" identifier = (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x29a08))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29a08))" ( (pointer_expression "**(code **)(puVar18 + 0x29a08)" * (pointer_expression "*(code **)(puVar18 + 0x29a08)" * (cast_expression "(code **)(puVar18 + 0x29a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29a08)" ( (binary_expression "puVar18 + 0x29a08" identifier + number_literal) ))))) )) (argument_list "(iVar5)" ( identifier ))))) ;) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" if (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" ( (binary_expression "ppppuVar2 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" else (compound_statement "{\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" { (expression_statement "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1)" identifier = (call_expression "(**(code **)(puVar18 + 0x29998))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29998))" ( (pointer_expression "**(code **)(puVar18 + 0x29998)" * (pointer_expression "*(code **)(puVar18 + 0x29998)" * (cast_expression "(code **)(puVar18 + 0x29998)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29998)" ( (binary_expression "puVar18 + 0x29998" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier )))) ;) (if_statement "if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }" { (expression_statement "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1)" identifier = (call_expression "(**(code **)(puVar18 + 0x297dc))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x297dc))" ( (pointer_expression "**(code **)(puVar18 + 0x297dc)" * (pointer_expression "*(code **)(puVar18 + 0x297dc)" * (cast_expression "(code **)(puVar18 + 0x297dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x297dc)" ( (binary_expression "puVar18 + 0x297dc" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier )))) ;) (if_statement "if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }) (else_clause "else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" else (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" { (expression_statement "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);" (assignment_expression "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" identifier = (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(**(code **)(puVar18 + 0x298e4))(iVar7)" (parenthesized_expression "(**(code **)(puVar18 + 0x298e4))" ( (pointer_expression "**(code **)(puVar18 + 0x298e4)" * (pointer_expression "*(code **)(puVar18 + 0x298e4)" * (cast_expression "(code **)(puVar18 + 0x298e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x298e4)" ( (binary_expression "puVar18 + 0x298e4" identifier + number_literal) ))))) )) (argument_list "(iVar7)" ( identifier ))))) ;) }))) }) (else_clause "else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" else (compound_statement "{\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" { (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) }))) }))) }))) }))) (goto_statement "goto LAB_0001eec0;" goto statement_identifier ;) })) })) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_104)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(pppuStack_100)" ( identifier ))) ;) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" identifier = (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) }))) (labeled_statement "LAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);" statement_identifier : (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar5);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" ( (pointer_expression "**(code **)(puVar18 + 0x29910)" * (pointer_expression "*(code **)(puVar18 + 0x29910)" * (cast_expression "(code **)(puVar18 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29910)" ( (binary_expression "puVar18 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar5)" ( identifier ))) ;)) (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" ( (pointer_expression "**(code **)(puVar18 + 0x29910)" * (pointer_expression "*(code **)(puVar18 + 0x29910)" * (cast_expression "(code **)(puVar18 + 0x29910)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29910)" ( (binary_expression "puVar18 + 0x29910" identifier + number_literal) ))))) )) (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_10c);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_10c)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_108);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" ( (pointer_expression "**(code **)(puVar18 + 0x29818)" * (pointer_expression "*(code **)(puVar18 + 0x29818)" * (cast_expression "(code **)(puVar18 + 0x29818)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x29818)" ( (binary_expression "puVar18 + 0x29818" identifier + number_literal) ))))) )) (argument_list "(uStack_108)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar18 + 0x299e8))(pcVar4);" (call_expression "(**(code **)(puVar18 + 0x299e8))(pcVar4)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" ( (pointer_expression "**(code **)(puVar18 + 0x299e8)" * (pointer_expression "*(code **)(puVar18 + 0x299e8)" * (cast_expression "(code **)(puVar18 + 0x299e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e8)" ( (binary_expression "puVar18 + 0x299e8" identifier + number_literal) ))))) )) (argument_list "(pcVar4)" ( identifier ))) ;) (if_statement "if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }" if (parenthesized_expression "(pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0))" ( (binary_expression "pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)" identifier == (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" * (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" * (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299e0)" ( (binary_expression "puVar18 + 0x299e0" identifier + number_literal) ))))))) )) (compound_statement "{\n    return ppppuVar8;\n  }" { (return_statement "return ppppuVar8;" return identifier ;) })) (expression_statement "pcVar20 = *(code **)(puVar18 + 0x299a4);" (assignment_expression "pcVar20 = *(code **)(puVar18 + 0x299a4)" identifier = (pointer_expression "*(code **)(puVar18 + 0x299a4)" * (cast_expression "(code **)(puVar18 + 0x299a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x299a4)" ( (binary_expression "puVar18 + 0x299a4" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = pcStack_fc;" (assignment_expression "pcVar14 = pcStack_fc" identifier = identifier) ;) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar19 = pcVar20 + 0x31068;" (assignment_expression "pcVar19 = pcVar20 + 0x31068" identifier = (binary_expression "pcVar20 + 0x31068" identifier + number_literal)) ;) (expression_statement "iStack_144 = **(int **)(pcVar20 + 0x295f8);" (assignment_expression "iStack_144 = **(int **)(pcVar20 + 0x295f8)" identifier = (pointer_expression "**(int **)(pcVar20 + 0x295f8)" * (pointer_expression "*(int **)(pcVar20 + 0x295f8)" * (cast_expression "(int **)(pcVar20 + 0x295f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295f8)" ( (binary_expression "pcVar20 + 0x295f8" identifier + number_literal) )))))) ;) (expression_statement "puVar10 = puVar6;" (assignment_expression "puVar10 = puVar6" identifier = identifier) ;) (expression_statement "iStack_140 = iVar1;" (assignment_expression "iStack_140 = iVar1" identifier = identifier) ;) (expression_statement "iStack_13c = iVar5;" (assignment_expression "iStack_13c = iVar5" identifier = identifier) ;) (expression_statement "pppuStack_138 = ppppuVar8;" (assignment_expression "pppuStack_138 = ppppuVar8" identifier = identifier) ;) (expression_statement "pcStack_134 = pcVar4;" (assignment_expression "pcStack_134 = pcVar4" identifier = identifier) ;) (if_statement "if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" if (parenthesized_expression "(*pcVar14 != '/')" ( (binary_expression "*pcVar14 != '/'" (pointer_expression "*pcVar14" * identifier) != (char_literal "'/'" ' character ')) )) (compound_statement "{\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" { (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" identifier = identifier) ;) (if_statement "if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" if (parenthesized_expression "(puVar6 != (undefined4 *)0x0)" ( (binary_expression "puVar6 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" { (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" identifier = identifier) ;) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0001f108;" goto statement_identifier ;) })) (expression_statement "pcStack_14c = (char *)canonicalize_filename_mode();" (assignment_expression "pcStack_14c = (char *)canonicalize_filename_mode()" identifier = (cast_expression "(char *)canonicalize_filename_mode()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "canonicalize_filename_mode()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pcVar16 = pcStack_14c;" (assignment_expression "pcVar16 = pcStack_14c" identifier = identifier) ;) (if_statement "if (pcStack_14c != (char *)0x0) goto LAB_0001f108;" if (parenthesized_expression "(pcStack_14c != (char *)0x0)" ( (binary_expression "pcStack_14c != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0001f108;" goto statement_identifier ;)) (expression_statement "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))()" identifier = (cast_expression "(uint *)(**(code **)(pcVar20 + 0x294c4))()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar20 + 0x294c4)" * (pointer_expression "*(code **)(pcVar20 + 0x294c4)" * (cast_expression "(code **)(pcVar20 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x294c4)" ( (binary_expression "pcVar20 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)*puVar9;" (assignment_expression "ppppuVar2 = (undefined4 ****)*puVar9" identifier = (cast_expression "(undefined4 ****)*puVar9" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (pointer_expression "*puVar9" * identifier))) ;) (expression_statement "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);" (assignment_expression "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" identifier = (cast_expression "(undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d20" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" identifier = (call_expression "quotearg_style(4,pcVar14)" identifier (argument_list "(4,pcVar14)" ( number_literal , identifier )))) ;) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(1,ppppuVar2,puVar10,uVar12)" ( number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" identifier = identifier) ;) (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" identifier = identifier) ;) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" identifier = identifier) ;) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0001f108:\n  uStack_148 = 0;" statement_identifier : (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;)) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" if (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" ( (binary_expression "ppppuVar2 == (undefined4 ****)0x0" identifier == (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }" { (expression_statement "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);" (assignment_expression "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6)" identifier = (call_expression "FUN_0001e8d0(pcStack_14c,puVar6)" identifier (argument_list "(pcStack_14c,puVar6)" ( identifier , identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" ( (pointer_expression "**(code **)(pcVar20 + 0x29600)" * (pointer_expression "*(code **)(pcVar20 + 0x29600)" * (cast_expression "(code **)(pcVar20 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29600)" ( (binary_expression "pcVar20 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1)" identifier = (cast_expression "(undefined4 ****)(uint)(iVar1 != -1)" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "(uint)(iVar1 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar1 != -1)" ( (binary_expression "iVar1 != -1" identifier != number_literal) ))))) ;) }) (else_clause "else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" else (compound_statement "{\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" { (expression_statement "iVar1 = xfts_open(&pcStack_14c,0x10,0);" (assignment_expression "iVar1 = xfts_open(&pcStack_14c,0x10,0)" identifier = (call_expression "xfts_open(&pcStack_14c,0x10,0)" identifier (argument_list "(&pcStack_14c,0x10,0)" ( (pointer_expression "&pcStack_14c" & identifier) , number_literal , number_literal )))) ;) (expression_statement "iVar5 = *(int *)(pcVar20 + 0x291b0);" (assignment_expression "iVar5 = *(int *)(pcVar20 + 0x291b0)" identifier = (pointer_expression "*(int *)(pcVar20 + 0x291b0)" * (cast_expression "(int *)(pcVar20 + 0x291b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x291b0)" ( (binary_expression "pcVar20 + 0x291b0" identifier + number_literal) ))))) ;) (while_statement "while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" while (parenthesized_expression "(iVar7 = fts_read(iVar1), iVar7 != 0)" ( (comma_expression "iVar7 = fts_read(iVar1), iVar7 != 0" (assignment_expression "iVar7 = fts_read(iVar1)" identifier = (call_expression "fts_read(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )) (compound_statement "{\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" { (expression_statement "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));" (assignment_expression "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" identifier = (call_expression "(*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" (parenthesized_expression "(*(code *)(iVar5 + -0x1730))" ( (pointer_expression "*(code *)(iVar5 + -0x1730)" * (cast_expression "(code *)(iVar5 + -0x1730)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -0x1730)" ( (binary_expression "iVar5 + -0x1730" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar1 + 0x18))" ( (pointer_expression "*(undefined4 *)(iVar1 + 0x18)" * (cast_expression "(undefined4 *)(iVar1 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x18)" ( (binary_expression "iVar1 + 0x18" identifier + number_literal) )))) )))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));" (assignment_expression "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" identifier = (cast_expression "(undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "((uint)ppppuVar2 & (uint)(iVar7 != -1))" ( (binary_expression "(uint)ppppuVar2 & (uint)(iVar7 != -1)" (cast_expression "(uint)ppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & (call_expression "(uint)(iVar7 != -1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )))) )))) ;) })) (expression_statement "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))()" identifier = (cast_expression "(int *)(**(code **)(pcVar20 + 0x294c4))()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" ( (pointer_expression "**(code **)(pcVar20 + 0x294c4)" * (pointer_expression "*(code **)(pcVar20 + 0x294c4)" * (cast_expression "(code **)(pcVar20 + 0x294c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x294c4)" ( (binary_expression "pcVar20 + 0x294c4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar5 = *piVar11;" (assignment_expression "iVar5 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (if_statement "if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" { (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" identifier = (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d38" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0,iVar5,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) })) (expression_statement "iVar1 = fts_close(iVar1);" (assignment_expression "iVar1 = fts_close(iVar1)" identifier = (call_expression "fts_close(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "puVar15 = (undefined4 *)0x5;" (assignment_expression "puVar15 = (undefined4 *)0x5" identifier = (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" { (expression_statement "iVar1 = *piVar11;" (assignment_expression "iVar1 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);" (assignment_expression "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" identifier = (cast_expression "(undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" ( (pointer_expression "**(code **)(pcVar20 + 0x295c8)" * (pointer_expression "*(code **)(pcVar20 + 0x295c8)" * (cast_expression "(code **)(pcVar20 + 0x295c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295c8)" ( (binary_expression "pcVar20 + 0x295c8" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d48" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" * (cast_expression "(int *)(pcVar20 + 0x290a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x290a4)" ( (binary_expression "pcVar20 + 0x290a4" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" ( (pointer_expression "**(code **)(pcVar20 + 0x29558)" * (pointer_expression "*(code **)(pcVar20 + 0x29558)" * (cast_expression "(code **)(pcVar20 + 0x29558)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29558)" ( (binary_expression "pcVar20 + 0x29558" identifier + number_literal) ))))) )) (argument_list "(0,iVar1,puVar15)" ( number_literal , identifier , identifier ))) ;) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" identifier = (cast_expression "(undefined4 ****)0x0" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) })) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" ( (pointer_expression "**(code **)(pcVar20 + 0x29600)" * (pointer_expression "*(code **)(pcVar20 + 0x29600)" * (cast_expression "(code **)(pcVar20 + 0x29600)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29600)" ( (binary_expression "pcVar20 + 0x29600" identifier + number_literal) ))))) )) (argument_list "(pcVar16)" ( identifier ))) ;) }))) (if_statement "if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" if (parenthesized_expression "(iStack_144 != **(int **)(pcVar20 + 0x295f8))" ( (binary_expression "iStack_144 != **(int **)(pcVar20 + 0x295f8)" identifier != (pointer_expression "**(int **)(pcVar20 + 0x295f8)" * (pointer_expression "*(int **)(pcVar20 + 0x295f8)" * (cast_expression "(int **)(pcVar20 + 0x295f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295f8)" ( (binary_expression "pcVar20 + 0x295f8" identifier + number_literal) )))))) )) (compound_statement "{\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" { (expression_statement "pcVar20 = *(code **)(pcVar20 + 0x295bc);" (assignment_expression "pcVar20 = *(code **)(pcVar20 + 0x295bc)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x295bc)" * (cast_expression "(code **)(pcVar20 + 0x295bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x295bc)" ( (binary_expression "pcVar20 + 0x295bc" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = iStack_144;" (assignment_expression "iVar1 = iStack_144" identifier = identifier) ;) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppppuVar8 = (undefined4 ****)qcopy_acl();" (assignment_expression "ppppuVar8 = (undefined4 ****)qcopy_acl()" identifier = (cast_expression "(undefined4 ****)qcopy_acl()" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "qcopy_acl()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" if (parenthesized_expression "(ppppuVar8 == (undefined4 ****)&SUB_fffffffe)" ( (binary_expression "ppppuVar8 == (undefined4 ****)&SUB_fffffffe" identifier == (cast_expression "(undefined4 ****)&SUB_fffffffe" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (pointer_expression "&SUB_fffffffe" & identifier))) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar20 + 0x291fc)" * (pointer_expression "*(code **)(pcVar20 + 0x291fc)" * (cast_expression "(code **)(pcVar20 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x291fc)" ( (binary_expression "pcVar20 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar12 = quote(iVar1);" (assignment_expression "uVar12 = quote(iVar1)" identifier = (call_expression "quote(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" ( (pointer_expression "**(code **)(pcVar20 + 0x29290)" * (pointer_expression "*(code **)(pcVar20 + 0x29290)" * (cast_expression "(code **)(pcVar20 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29290)" ( (binary_expression "pcVar20 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" ( number_literal , identifier , (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x57f4" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" * (cast_expression "(int *)(pcVar20 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x28ddc)" ( (binary_expression "pcVar20 + 0x28ddc" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) }) (else_clause "else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" else (if_statement "if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" if (parenthesized_expression "(ppppuVar8 == (undefined4 ****)0xffffffff)" ( (binary_expression "ppppuVar8 == (undefined4 ****)0xffffffff" identifier == (cast_expression "(undefined4 ****)0xffffffff" ( (type_descriptor "undefined4 ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" { (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" ( (pointer_expression "**(code **)(pcVar20 + 0x291fc)" * (pointer_expression "*(code **)(pcVar20 + 0x291fc)" * (cast_expression "(code **)(pcVar20 + 0x291fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x291fc)" ( (binary_expression "pcVar20 + 0x291fc" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar17 = *puVar6;" (assignment_expression "uVar17 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" identifier = (call_expression "(**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29300))" ( (pointer_expression "**(code **)(pcVar20 + 0x29300)" * (pointer_expression "*(code **)(pcVar20 + 0x29300)" * (cast_expression "(code **)(pcVar20 + 0x29300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29300)" ( (binary_expression "pcVar20 + 0x29300" identifier + number_literal) ))))) )) (argument_list "(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" ( number_literal , (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x5a30" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" * (cast_expression "(int *)(pcVar20 + 0x28ddc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0x28ddc)" ( (binary_expression "pcVar20 + 0x28ddc" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (expression_statement "uVar13 = quote(puVar15);" (assignment_expression "uVar13 = quote(puVar15)" identifier = (call_expression "quote(puVar15)" identifier (argument_list "(puVar15)" ( identifier )))) ;) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" ( (pointer_expression "**(code **)(pcVar20 + 0x29290)" * (pointer_expression "*(code **)(pcVar20 + 0x29290)" * (cast_expression "(code **)(pcVar20 + 0x29290)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x29290)" ( (binary_expression "pcVar20 + 0x29290" identifier + number_literal) ))))) )) (argument_list "(0,uVar17,uVar12,uVar13)" ( number_literal , identifier , identifier , identifier ))) ;) })))) (return_statement "return ppppuVar8;" return identifier ;) })) (return_statement "return ppppuVar2;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) , (parameter_declaration TYPE IDENT) ))))))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE (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 * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) 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 *))))) ) 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 *))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (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 *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT )))) ;) (expression_statement (assignment_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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , (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 *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) 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 *))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (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 = (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 *))))) ) LIT)) )) (compound_statement { (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 = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) 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 ( 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 *))))) ) 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (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 *))))) ) 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 *))))) ) LIT)) ;) }))) }))) (goto_statement goto statement_identifier ;) })) (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 = 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 ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)))) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) 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 *))))) ) 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) }))) }))) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }) (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 ( (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 *))))) ) 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 *))))) ) LIT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }))))) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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 = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (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 ( ))))) ;) (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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (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 ( LIT , IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 *)) ) (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 (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (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 *))))) ) LIT)) ;) }) (else_clause else (compound_statement { (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 *))))) ) LIT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (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 = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression LIT < IDENT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (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 *))))) ) 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 , IDENT , 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 (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 ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (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 *))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 *))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 *))))) ) 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 *))))) ) (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 * (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 *))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 )))) ;) (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 *))))) ) 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 *))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) 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 (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) ;) (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 *))))) ) 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 (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 (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 ))) ;) (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 (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 * (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 = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 ( ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (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 *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( 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 ( LIT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_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 *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( 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 *))))) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT != LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_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) ))))) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (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 ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * 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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (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 = (cast_expression ( (type_descriptor TYPE (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 ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (pointer_expression & IDENT))) )) (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 ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 ( LIT , IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) }) (else_clause else (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 *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT )))) ;) (expression_statement (assignment_expression IDENT = (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 ( LIT , IDENT , IDENT , IDENT ))) ;) })))) (return_statement return IDENT ;) })) (return_statement return IDENT ;) })))
(function_definition "undefined4 **** FUN_0001e8d0(undefined4 ****param_1,int param_2)\n\n{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" (type_identifier "undefined4") (pointer_declarator "**** FUN_0001e8d0(undefined4 ****param_1,int param_2)" (* "*") (pointer_declarator "*** FUN_0001e8d0(undefined4 ****param_1,int param_2)" (* "*") (pointer_declarator "** FUN_0001e8d0(undefined4 ****param_1,int param_2)" (* "*") (pointer_declarator "* FUN_0001e8d0(undefined4 ****param_1,int param_2)" (* "*") (function_declarator "FUN_0001e8d0(undefined4 ****param_1,int param_2)" (identifier "FUN_0001e8d0") (parameter_list "(undefined4 ****param_1,int param_2)" (( "(") (parameter_declaration "undefined4 ****param_1" (type_identifier "undefined4") (pointer_declarator "****param_1" (* "*") (pointer_declarator "***param_1" (* "*") (pointer_declarator "**param_1" (* "*") (pointer_declarator "*param_1" (* "*") (identifier "param_1")))))) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))))))) (compound_statement "{\n  int iVar1;\n  undefined4 ****ppppuVar2;\n  undefined4 ****ppppuVar3;\n  char *pcVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  undefined4 ****ppppuVar8;\n  uint *puVar9;\n  undefined4 *puVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  undefined4 uVar13;\n  char *pcVar14;\n  undefined4 *puVar15;\n  char *pcVar16;\n  undefined4 ****unaff_s1;\n  int unaff_s2;\n  undefined4 uVar17;\n  int unaff_s3;\n  undefined *puVar18;\n  code *pcVar19;\n  code *pcVar20;\n  char *pcStack_14c;\n  undefined4 uStack_148;\n  int iStack_144;\n  int iStack_140;\n  int iStack_13c;\n  undefined4 ***pppuStack_138;\n  char *pcStack_134;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 ***pppuStack_100;\n  char *pcStack_fc;\n  undefined4 ***pppuStack_f4;\n  undefined4 ***pppuStack_f0;\n  int iStack_ec;\n  int iStack_e8;\n  code *pcStack_e4;\n  undefined4 local_c8;\n  undefined4 ***local_c4;\n  undefined1 auStack_c0 [24];\n  undefined4 ***local_a8;\n  char *local_1c;\n  \n  local_1c = *(char **)PTR___stack_chk_guard_000486a0;\n  local_c8 = 0;\n  local_c4 = (undefined4 ****)0x0;\n  if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }\n  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }\n  pcVar20 = defaultcon;\n  pcVar14 = local_1c;\n  puVar18 = PTR___stack_chk_fail_00048664;\n  (*(code *)PTR___stack_chk_fail_00048664)();\n  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);\n  uStack_10c = 0;\n  uStack_108 = 0;\n  pppuStack_f4 = ppppuVar2;\n  pppuStack_f0 = unaff_s1;\n  iStack_ec = unaff_s2;\n  iStack_e8 = unaff_s3;\n  pcStack_e4 = pcVar20;\n  if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }\n  puVar6 = &uStack_10c;\n  ppppuVar2 = ppppuVar8;\n  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);\n  if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }\nLAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);\n  (**(code **)(puVar18 + 0x29910))(iVar1);\n  (**(code **)(puVar18 + 0x29818))(uStack_10c);\n  (**(code **)(puVar18 + 0x29818))(uStack_108);\n  (**(code **)(puVar18 + 0x299e8))(pcVar4);\n  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }\n  pcVar20 = *(code **)(puVar18 + 0x299a4);\n  pcVar14 = pcStack_fc;\n  (*pcVar20)();\n  pcVar19 = pcVar20 + 0x31068;\n  iStack_144 = **(int **)(pcVar20 + 0x295f8);\n  puVar10 = puVar6;\n  iStack_140 = iVar1;\n  iStack_13c = iVar5;\n  pppuStack_138 = ppppuVar8;\n  pcStack_134 = pcVar4;\n  if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }\n  puVar15 = puVar6;\n  pcStack_14c = pcVar14;\n  puVar6 = puVar10;\n  pcVar16 = (char *)0x0;\nLAB_0001f108:\n  uStack_148 = 0;\n  if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }\n  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }\n  return ppppuVar2;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined4 ****ppppuVar2;" (type_identifier "undefined4") (pointer_declarator "****ppppuVar2" (* "*") (pointer_declarator "***ppppuVar2" (* "*") (pointer_declarator "**ppppuVar2" (* "*") (pointer_declarator "*ppppuVar2" (* "*") (identifier "ppppuVar2"))))) (; ";")) (declaration "undefined4 ****ppppuVar3;" (type_identifier "undefined4") (pointer_declarator "****ppppuVar3" (* "*") (pointer_declarator "***ppppuVar3" (* "*") (pointer_declarator "**ppppuVar3" (* "*") (pointer_declarator "*ppppuVar3" (* "*") (identifier "ppppuVar3"))))) (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "undefined4 ****ppppuVar8;" (type_identifier "undefined4") (pointer_declarator "****ppppuVar8" (* "*") (pointer_declarator "***ppppuVar8" (* "*") (pointer_declarator "**ppppuVar8" (* "*") (pointer_declarator "*ppppuVar8" (* "*") (identifier "ppppuVar8"))))) (; ";")) (declaration "uint *puVar9;" (type_identifier "uint") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "undefined4 *puVar10;" (type_identifier "undefined4") (pointer_declarator "*puVar10" (* "*") (identifier "puVar10")) (; ";")) (declaration "int *piVar11;" (primitive_type "int") (pointer_declarator "*piVar11" (* "*") (identifier "piVar11")) (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "undefined4 uVar13;" (type_identifier "undefined4") (identifier "uVar13") (; ";")) (declaration "char *pcVar14;" (primitive_type "char") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "undefined4 *puVar15;" (type_identifier "undefined4") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "char *pcVar16;" (primitive_type "char") (pointer_declarator "*pcVar16" (* "*") (identifier "pcVar16")) (; ";")) (declaration "undefined4 ****unaff_s1;" (type_identifier "undefined4") (pointer_declarator "****unaff_s1" (* "*") (pointer_declarator "***unaff_s1" (* "*") (pointer_declarator "**unaff_s1" (* "*") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1"))))) (; ";")) (declaration "int unaff_s2;" (primitive_type "int") (identifier "unaff_s2") (; ";")) (declaration "undefined4 uVar17;" (type_identifier "undefined4") (identifier "uVar17") (; ";")) (declaration "int unaff_s3;" (primitive_type "int") (identifier "unaff_s3") (; ";")) (declaration "undefined *puVar18;" (type_identifier "undefined") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "code *pcVar19;" (type_identifier "code") (pointer_declarator "*pcVar19" (* "*") (identifier "pcVar19")) (; ";")) (declaration "code *pcVar20;" (type_identifier "code") (pointer_declarator "*pcVar20" (* "*") (identifier "pcVar20")) (; ";")) (declaration "char *pcStack_14c;" (primitive_type "char") (pointer_declarator "*pcStack_14c" (* "*") (identifier "pcStack_14c")) (; ";")) (declaration "undefined4 uStack_148;" (type_identifier "undefined4") (identifier "uStack_148") (; ";")) (declaration "int iStack_144;" (primitive_type "int") (identifier "iStack_144") (; ";")) (declaration "int iStack_140;" (primitive_type "int") (identifier "iStack_140") (; ";")) (declaration "int iStack_13c;" (primitive_type "int") (identifier "iStack_13c") (; ";")) (declaration "undefined4 ***pppuStack_138;" (type_identifier "undefined4") (pointer_declarator "***pppuStack_138" (* "*") (pointer_declarator "**pppuStack_138" (* "*") (pointer_declarator "*pppuStack_138" (* "*") (identifier "pppuStack_138")))) (; ";")) (declaration "char *pcStack_134;" (primitive_type "char") (pointer_declarator "*pcStack_134" (* "*") (identifier "pcStack_134")) (; ";")) (declaration "undefined4 uStack_10c;" (type_identifier "undefined4") (identifier "uStack_10c") (; ";")) (declaration "undefined4 uStack_108;" (type_identifier "undefined4") (identifier "uStack_108") (; ";")) (declaration "undefined4 uStack_104;" (type_identifier "undefined4") (identifier "uStack_104") (; ";")) (declaration "undefined4 ***pppuStack_100;" (type_identifier "undefined4") (pointer_declarator "***pppuStack_100" (* "*") (pointer_declarator "**pppuStack_100" (* "*") (pointer_declarator "*pppuStack_100" (* "*") (identifier "pppuStack_100")))) (; ";")) (declaration "char *pcStack_fc;" (primitive_type "char") (pointer_declarator "*pcStack_fc" (* "*") (identifier "pcStack_fc")) (; ";")) (declaration "undefined4 ***pppuStack_f4;" (type_identifier "undefined4") (pointer_declarator "***pppuStack_f4" (* "*") (pointer_declarator "**pppuStack_f4" (* "*") (pointer_declarator "*pppuStack_f4" (* "*") (identifier "pppuStack_f4")))) (; ";")) (declaration "undefined4 ***pppuStack_f0;" (type_identifier "undefined4") (pointer_declarator "***pppuStack_f0" (* "*") (pointer_declarator "**pppuStack_f0" (* "*") (pointer_declarator "*pppuStack_f0" (* "*") (identifier "pppuStack_f0")))) (; ";")) (declaration "int iStack_ec;" (primitive_type "int") (identifier "iStack_ec") (; ";")) (declaration "int iStack_e8;" (primitive_type "int") (identifier "iStack_e8") (; ";")) (declaration "code *pcStack_e4;" (type_identifier "code") (pointer_declarator "*pcStack_e4" (* "*") (identifier "pcStack_e4")) (; ";")) (declaration "undefined4 local_c8;" (type_identifier "undefined4") (identifier "local_c8") (; ";")) (declaration "undefined4 ***local_c4;" (type_identifier "undefined4") (pointer_declarator "***local_c4" (* "*") (pointer_declarator "**local_c4" (* "*") (pointer_declarator "*local_c4" (* "*") (identifier "local_c4")))) (; ";")) (declaration "undefined1 auStack_c0 [24];" (type_identifier "undefined1") (array_declarator "auStack_c0 [24]" (identifier "auStack_c0") ([ "[") (number_literal "24") (] "]")) (; ";")) (declaration "undefined4 ***local_a8;" (type_identifier "undefined4") (pointer_declarator "***local_a8" (* "*") (pointer_declarator "**local_a8" (* "*") (pointer_declarator "*local_a8" (* "*") (identifier "local_a8")))) (; ";")) (declaration "char *local_1c;" (primitive_type "char") (pointer_declarator "*local_1c" (* "*") (identifier "local_1c")) (; ";")) (expression_statement "local_1c = *(char **)PTR___stack_chk_guard_000486a0;" (assignment_expression "local_1c = *(char **)PTR___stack_chk_guard_000486a0" (identifier "local_1c") (= "=") (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" (* "*") (cast_expression "(char **)PTR___stack_chk_guard_000486a0" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR___stack_chk_guard_000486a0")))) (; ";")) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c4 = (undefined4 ****)0x0;" (assignment_expression "local_c4 = (undefined4 ****)0x0" (identifier "local_c4") (= "=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (param_2 == 0) {\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }\n  else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    ppppuVar8 = (undefined4 ****)0x20000;\n    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();\n    ppppuVar2 = unaff_s1;\n    if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }\n    ppppuVar8 = unaff_s1;\n    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);\n    unaff_s3 = 0;\n    if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }\nLAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);\n    (*(code *)PTR_context_free_000485d0)(unaff_s3);\n    (*(code *)PTR_freecon_000484d8)(local_c8);\n    (*(code *)PTR_freecon_000484d8)(local_c4);\n  }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0x20000;" (assignment_expression "ppppuVar8 = (undefined4 ****)0x20000" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0x20000" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x20000"))) (; ";")) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)()" (identifier "unaff_s1") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_open64_000485a0)()" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_open64_000485a0)()" (parenthesized_expression "(*(code *)PTR_open64_000485a0)" (( "(") (pointer_expression "*(code *)PTR_open64_000485a0" (* "*") (cast_expression "(code *)PTR_open64_000485a0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_open64_000485a0"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" (identifier "ppppuVar2") (= "=") (identifier "unaff_s1")) (; ";")) (if_statement "if (unaff_s1 == (undefined4 ****)0xffffffff) {\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" (if "if") (parenthesized_expression "(unaff_s1 == (undefined4 ****)0xffffffff)" (( "(") (binary_expression "unaff_s1 == (undefined4 ****)0xffffffff" (identifier "unaff_s1") (== "==") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();\n      unaff_s3 = 0;\n      if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }\n      goto LAB_0001eb5c;\n    }" ({ "{") (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)()" (identifier "piVar11") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0004856c)()" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0004856c" (* "*") (cast_expression "(code *)PTR___errno_location_0004856c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0004856c"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (if_statement "if (*piVar11 == 0x5a) {\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }\n      else {\n        unaff_s2 = 0;\n      }" (if "if") (parenthesized_expression "(*piVar11 == 0x5a)" (( "(") (binary_expression "*piVar11 == 0x5a" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (== "==") (number_literal "0x5a")) () ")")) (compound_statement "{\n        ppppuVar8 = param_1;\n        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);\n        if (-1 < iVar1) goto LAB_0001e9d0;\n        unaff_s3 = 0;\n        unaff_s2 = 0;\n      }" ({ "{") (expression_statement "ppppuVar8 = param_1;" (assignment_expression "ppppuVar8 = param_1" (identifier "ppppuVar8") (= "=") (identifier "param_1")) (; ";")) (expression_statement "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);" (assignment_expression "iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" (identifier "iVar1") (= "=") (call_expression "(*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0)" (parenthesized_expression "(*(code *)PTR___lxstat64_0004848c)" (( "(") (pointer_expression "*(code *)PTR___lxstat64_0004848c" (* "*") (cast_expression "(code *)PTR___lxstat64_0004848c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___lxstat64_0004848c"))) () ")")) (argument_list "(3,param_1,auStack_c0)" (( "(") (number_literal "3") (, ",") (identifier "param_1") (, ",") (identifier "auStack_c0") () ")")))) (; ";")) (if_statement "if (-1 < iVar1) goto LAB_0001e9d0;" (if "if") (parenthesized_expression "(-1 < iVar1)" (( "(") (binary_expression "-1 < iVar1" (number_literal "-1") (< "<") (identifier "iVar1")) () ")")) (goto_statement "goto LAB_0001e9d0;" (goto "goto") (statement_identifier "LAB_0001e9d0") (; ";"))) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" (identifier "unaff_s2") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        unaff_s2 = 0;\n      }" (else "else") (compound_statement "{\n        unaff_s2 = 0;\n      }" ({ "{") (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" (identifier "unaff_s2") (= "=") (number_literal "0")) (; ";")) (} "}")))) (goto_statement "goto LAB_0001eb5c;" (goto "goto") (statement_identifier "LAB_0001eb5c") (; ";")) (} "}"))) (expression_statement "ppppuVar8 = unaff_s1;" (assignment_expression "ppppuVar8 = unaff_s1" (identifier "ppppuVar8") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "iVar1 = (*(code *)PTR___fxstat64_00048628)(3);" (assignment_expression "iVar1 = (*(code *)PTR___fxstat64_00048628)(3)" (identifier "iVar1") (= "=") (call_expression "(*(code *)PTR___fxstat64_00048628)(3)" (parenthesized_expression "(*(code *)PTR___fxstat64_00048628)" (( "(") (pointer_expression "*(code *)PTR___fxstat64_00048628" (* "*") (cast_expression "(code *)PTR___fxstat64_00048628" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___fxstat64_00048628"))) () ")")) (argument_list "(3)" (( "(") (number_literal "3") () ")")))) (; ";")) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar1 < 0) {\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }\n    else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      unaff_s2 = 0;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\nLAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);\n    }" ({ "{") (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" (identifier "unaff_s2") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (labeled_statement "LAB_0001eb48:\n      (*(code *)PTR_close_00048480)(unaff_s1);" (statement_identifier "LAB_0001eb48") (: ":") (expression_statement "(*(code *)PTR_close_00048480)(unaff_s1);" (call_expression "(*(code *)PTR_close_00048480)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_close_00048480)" (( "(") (pointer_expression "*(code *)PTR_close_00048480" (* "*") (cast_expression "(code *)PTR_close_00048480" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_00048480"))) () ")")) (argument_list "(unaff_s1)" (( "(") (identifier "unaff_s1") () ")"))) (; ";"))) (} "}")) (else_clause "else {\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" (else "else") (compound_statement "{\nLAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);\n      if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }\n    }" ({ "{") (labeled_statement "LAB_0001e9d0:\n      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" (statement_identifier "LAB_0001e9d0") (: ":") (expression_statement "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);" (assignment_expression "iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" (identifier "iVar1") (= "=") (call_expression "(*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8)" (parenthesized_expression "(*(code *)PTR_matchpathcon_00048618)" (( "(") (pointer_expression "*(code *)PTR_matchpathcon_00048618" (* "*") (cast_expression "(code *)PTR_matchpathcon_00048618" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_matchpathcon_00048618"))) () ")")) (argument_list "(param_1,local_a8,&local_c8)" (( "(") (identifier "param_1") (, ",") (identifier "local_a8") (, ",") (pointer_expression "&local_c8" (& "&") (identifier "local_c8")) () ")")))) (; ";"))) (if_statement "if (iVar1 < 0) {\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }\n      else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);\n        if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\nLAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }\n      }" ({ "{") (expression_statement "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);" (assignment_expression "piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" (identifier "piVar11") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0004856c)(local_c8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0004856c)(local_c8)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0004856c" (* "*") (cast_expression "(code *)PTR___errno_location_0004856c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0004856c"))) () ")")) (argument_list "(local_c8)" (( "(") (identifier "local_c8") () ")"))))) (; ";")) (if_statement "if (*piVar11 == 2) {\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }\n        else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" (if "if") (parenthesized_expression "(*piVar11 == 2)" (( "(") (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n          *piVar11 = 0x3d;\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" ({ "{") (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (= "=") (number_literal "0x3d")) (; ";")) (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" (identifier "unaff_s2") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" (else "else") (compound_statement "{\n          unaff_s3 = 0;\n          unaff_s2 = 0;\n        }" ({ "{") (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s2 = 0;" (assignment_expression "unaff_s2 = 0" (identifier "unaff_s2") (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_0001eb3c:\n        ppppuVar8 = (undefined4 ****)local_a8;" (statement_identifier "LAB_0001eb3c") (: ":") (expression_statement "ppppuVar8 = (undefined4 ****)local_a8;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_a8" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)local_a8" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "local_a8"))) (; ";"))) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" (if "if") (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" (( "(") (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" (identifier "unaff_s1") (!= "!=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n          ppppuVar2 = (undefined4 ****)0xffffffff;\n          goto LAB_0001eb48;\n        }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (goto_statement "goto LAB_0001eb48;" (goto "goto") (statement_identifier "LAB_0001eb48") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" (else "else") (compound_statement "{\n        unaff_s2 = (*(code *)PTR_context_new_0004868c)();\n        if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }\n        ppppuVar8 = &local_c4;\n        if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }\n        iVar1 = rpl_lgetfilecon(param_1);\n        if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }\n      }" ({ "{") (expression_statement "unaff_s2 = (*(code *)PTR_context_new_0004868c)();" (assignment_expression "unaff_s2 = (*(code *)PTR_context_new_0004868c)()" (identifier "unaff_s2") (= "=") (call_expression "(*(code *)PTR_context_new_0004868c)()" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" (( "(") (pointer_expression "*(code *)PTR_context_new_0004868c" (* "*") (cast_expression "(code *)PTR_context_new_0004868c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_new_0004868c"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (unaff_s2 == 0) {\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" (if "if") (parenthesized_expression "(unaff_s2 == 0)" (( "(") (binary_expression "unaff_s2 == 0" (identifier "unaff_s2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          unaff_s3 = 0;\n          goto LAB_0001eb3c;\n        }" ({ "{") (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0001eb3c;" (goto "goto") (statement_identifier "LAB_0001eb3c") (; ";")) (} "}"))) (expression_statement "ppppuVar8 = &local_c4;" (assignment_expression "ppppuVar8 = &local_c4" (identifier "ppppuVar8") (= "=") (pointer_expression "&local_c4" (& "&") (identifier "local_c4"))) (; ";")) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" (if "if") (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" (( "(") (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" (identifier "unaff_s1") (!= "!=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n          iVar1 = rpl_fgetfilecon(unaff_s1);\n          if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }\n          goto LAB_0001eb48;\n        }" ({ "{") (expression_statement "iVar1 = rpl_fgetfilecon(unaff_s1);" (assignment_expression "iVar1 = rpl_fgetfilecon(unaff_s1)" (identifier "iVar1") (= "=") (call_expression "rpl_fgetfilecon(unaff_s1)" (identifier "rpl_fgetfilecon") (argument_list "(unaff_s1)" (( "(") (identifier "unaff_s1") () ")")))) (; ";")) (if_statement "if (iVar1 < 0) {\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }\n          else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n            unaff_s3 = 0;\n            ppppuVar2 = (undefined4 ****)0xffffffff;\n          }" ({ "{") (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" (else "else") (compound_statement "{\n            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n            if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n          }" ({ "{") (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" (identifier "unaff_s3") (= "=") (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" (( "(") (pointer_expression "*(code *)PTR_context_new_0004868c" (* "*") (cast_expression "(code *)PTR_context_new_0004868c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_new_0004868c"))) () ")")) (argument_list "(local_c4)" (( "(") (identifier "local_c4") () ")")))) (; ";")) (if_statement "if (unaff_s3 == 0) {\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" (if "if") (parenthesized_expression "(unaff_s3 == 0)" (( "(") (binary_expression "unaff_s3 == 0" (identifier "unaff_s3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" (else "else") (compound_statement "{\n              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);\n              ppppuVar3 = ppppuVar8;\n              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;\n              ppppuVar2 = (undefined4 ****)0xffffffff;\n            }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" (( "(") (pointer_expression "*(code *)PTR_context_type_get_000486c8" (* "*") (cast_expression "(code *)PTR_context_type_get_000486c8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_type_get_000486c8"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))))) (; ";")) (expression_statement "ppppuVar3 = ppppuVar8;" (assignment_expression "ppppuVar3 = ppppuVar8" (identifier "ppppuVar3") (= "=") (identifier "ppppuVar8")) (; ";")) (if_statement "if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;" (if "if") (parenthesized_expression "(ppppuVar8 != (undefined4 ****)0x0)" (( "(") (binary_expression "ppppuVar8 != (undefined4 ****)0x0" (identifier "ppppuVar8") (!= "!=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0001ea64;" (goto "goto") (statement_identifier "LAB_0001ea64") (; ";"))) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (} "}")))) (goto_statement "goto LAB_0001eb48;" (goto "goto") (statement_identifier "LAB_0001eb48") (; ";")) (} "}"))) (expression_statement "iVar1 = rpl_lgetfilecon(param_1);" (assignment_expression "iVar1 = rpl_lgetfilecon(param_1)" (identifier "iVar1") (= "=") (call_expression "rpl_lgetfilecon(param_1)" (identifier "rpl_lgetfilecon") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar1 < 0) {\n          unaff_s3 = 0;\n        }\n        else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          unaff_s3 = 0;\n        }" ({ "{") (expression_statement "unaff_s3 = 0;" (assignment_expression "unaff_s3 = 0" (identifier "unaff_s3") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" (else "else") (compound_statement "{\n          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);\n          if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }\n        }" ({ "{") (expression_statement "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);" (assignment_expression "unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4)" (identifier "unaff_s3") (= "=") (call_expression "(*(code *)PTR_context_new_0004868c)(local_c4)" (parenthesized_expression "(*(code *)PTR_context_new_0004868c)" (( "(") (pointer_expression "*(code *)PTR_context_new_0004868c" (* "*") (cast_expression "(code *)PTR_context_new_0004868c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_new_0004868c"))) () ")")) (argument_list "(local_c4)" (( "(") (identifier "local_c4") () ")")))) (; ";")) (if_statement "if ((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" (if "if") (parenthesized_expression "((unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0))" (( "(") (binary_expression "(unaff_s3 != 0) &&\n             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" (parenthesized_expression "(unaff_s3 != 0)" (( "(") (binary_expression "unaff_s3 != 0" (identifier "unaff_s3") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)" (( "(") (comma_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),\n             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (identifier "ppppuVar3") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_context_type_get_000486c8)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_type_get_000486c8)" (( "(") (pointer_expression "*(code *)PTR_context_type_get_000486c8" (* "*") (cast_expression "(code *)PTR_context_type_get_000486c8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_type_get_000486c8"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))))) (, ",") (comma_expression "ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = ppppuVar3" (identifier "ppppuVar8") (= "=") (identifier "ppppuVar3")) (, ",") (binary_expression "ppppuVar3 != (undefined4 ****)0x0" (identifier "ppppuVar3") (!= "!=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))))) () ")"))) () ")")) (compound_statement "{\nLAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);\n            local_a8 = ppppuVar3;\n            if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;\n            if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }\n            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);\n            ppppuVar2 = unaff_s1;\n          }" ({ "{") (labeled_statement "LAB_0001ea64:\n            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" (statement_identifier "LAB_0001ea64") (: ":") (expression_statement "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);" (assignment_expression "iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3)" (identifier "iVar1") (= "=") (call_expression "(*(code *)PTR_context_type_set_00048658)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_type_set_00048658)" (( "(") (pointer_expression "*(code *)PTR_context_type_set_00048658" (* "*") (cast_expression "(code *)PTR_context_type_set_00048658" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_type_set_00048658"))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")")))) (; ";"))) (expression_statement "local_a8 = ppppuVar3;" (assignment_expression "local_a8 = ppppuVar3" (identifier "local_a8") (= "=") (identifier "ppppuVar3")) (; ";")) (if_statement "if ((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;" (if "if") (parenthesized_expression "((iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0))" (( "(") (binary_expression "(iVar1 != 0) ||\n               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)" (( "(") (comma_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),\n               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_context_str_0004849c)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_str_0004849c)" (( "(") (pointer_expression "*(code *)PTR_context_str_0004849c" (* "*") (cast_expression "(code *)PTR_context_str_0004849c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_str_0004849c"))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))))) (, ",") (comma_expression "local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0" (assignment_expression "local_a8 = ppppuVar3" (identifier "local_a8") (= "=") (identifier "ppppuVar3")) (, ",") (binary_expression "ppppuVar8 == (undefined4 ****)0x0" (identifier "ppppuVar8") (== "==") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))))) () ")"))) () ")")) (goto_statement "goto LAB_0001eb3c;" (goto "goto") (statement_identifier "LAB_0001eb3c") (; ";"))) (if_statement "if (unaff_s1 != (undefined4 ****)0xffffffff) {\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" (if "if") (parenthesized_expression "(unaff_s1 != (undefined4 ****)0xffffffff)" (( "(") (binary_expression "unaff_s1 != (undefined4 ****)0xffffffff" (identifier "unaff_s1") (!= "!=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);\n              goto LAB_0001eb48;\n            }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_fsetfilecon_00048528)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_fsetfilecon_00048528)" (( "(") (pointer_expression "*(code *)PTR_fsetfilecon_00048528" (* "*") (cast_expression "(code *)PTR_fsetfilecon_00048528" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_fsetfilecon_00048528"))) () ")")) (argument_list "(unaff_s1)" (( "(") (identifier "unaff_s1") () ")"))))) (; ";")) (goto_statement "goto LAB_0001eb48;" (goto "goto") (statement_identifier "LAB_0001eb48") (; ";")) (} "}"))) (expression_statement "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);" (assignment_expression "unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" (identifier "unaff_s1") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_lsetfilecon_000486b4)(param_1)" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" (( "(") (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" (* "*") (cast_expression "(code *)PTR_lsetfilecon_000486b4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_lsetfilecon_000486b4"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (expression_statement "ppppuVar2 = unaff_s1;" (assignment_expression "ppppuVar2 = unaff_s1" (identifier "ppppuVar2") (= "=") (identifier "unaff_s1")) (; ";")) (} "}"))) (} "}")))) (} "}")))) (} "}")))) (labeled_statement "LAB_0001eb5c:\n    (*(code *)PTR_context_free_000485d0)(unaff_s2);" (statement_identifier "LAB_0001eb5c") (: ":") (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s2);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" (( "(") (pointer_expression "*(code *)PTR_context_free_000485d0" (* "*") (cast_expression "(code *)PTR_context_free_000485d0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_free_000485d0"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";"))) (expression_statement "(*(code *)PTR_context_free_000485d0)(unaff_s3);" (call_expression "(*(code *)PTR_context_free_000485d0)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_context_free_000485d0)" (( "(") (pointer_expression "*(code *)PTR_context_free_000485d0" (* "*") (cast_expression "(code *)PTR_context_free_000485d0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_context_free_000485d0"))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c8);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c8)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" (( "(") (pointer_expression "*(code *)PTR_freecon_000484d8" (* "*") (cast_expression "(code *)PTR_freecon_000484d8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_freecon_000484d8"))) () ")")) (argument_list "(local_c8)" (( "(") (identifier "local_c8") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" (( "(") (pointer_expression "*(code *)PTR_freecon_000484d8" (* "*") (cast_expression "(code *)PTR_freecon_000484d8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_freecon_000484d8"))) () ")")) (argument_list "(local_c4)" (( "(") (identifier "local_c4") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" (else "else") (compound_statement "{\n    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);\n    ppppuVar8 = (undefined4 ****)local_c4;\n    if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }\n  }" ({ "{") (expression_statement "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);" (assignment_expression "iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" (identifier "iVar1") (= "=") (call_expression "(*(code *)PTR_getfscreatecon_000484ac)(&local_c4)" (parenthesized_expression "(*(code *)PTR_getfscreatecon_000484ac)" (( "(") (pointer_expression "*(code *)PTR_getfscreatecon_000484ac" (* "*") (cast_expression "(code *)PTR_getfscreatecon_000484ac" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_getfscreatecon_000484ac"))) () ")")) (argument_list "(&local_c4)" (( "(") (pointer_expression "&local_c4" (& "&") (identifier "local_c4")) () ")")))) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)local_c4;" (assignment_expression "ppppuVar8 = (undefined4 ****)local_c4" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)local_c4" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "local_c4"))) (; ";")) (if_statement "if (iVar1 < 0) {\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" (else "else") (if_statement "if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" (if "if") (parenthesized_expression "((undefined4 ****)local_c4 == (undefined4 ****)0x0)" (( "(") (binary_expression "(undefined4 ****)local_c4 == (undefined4 ****)0x0" (cast_expression "(undefined4 ****)local_c4" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "local_c4")) (== "==") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);\n      *puVar6 = 0x3d;\n      ppppuVar2 = (undefined4 ****)0xffffffff;\n    }" ({ "{") (expression_statement "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);" (assignment_expression "puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0004856c)(param_1)" (parenthesized_expression "(*(code *)PTR___errno_location_0004856c)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0004856c" (* "*") (cast_expression "(code *)PTR___errno_location_0004856c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0004856c"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (expression_statement "*puVar6 = 0x3d;" (assignment_expression "*puVar6 = 0x3d" (pointer_expression "*puVar6" (* "*") (identifier "puVar6")) (= "=") (number_literal "0x3d")) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar2 = (undefined4 ****)0xffffffff" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" (else "else") (compound_statement "{\n      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();\n      (*(code *)PTR_freecon_000484d8)(local_c4);\n    }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();" (assignment_expression "ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)()" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(*(code *)PTR_lsetfilecon_000486b4)()" (parenthesized_expression "(*(code *)PTR_lsetfilecon_000486b4)" (( "(") (pointer_expression "*(code *)PTR_lsetfilecon_000486b4" (* "*") (cast_expression "(code *)PTR_lsetfilecon_000486b4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_lsetfilecon_000486b4"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "(*(code *)PTR_freecon_000484d8)(local_c4);" (call_expression "(*(code *)PTR_freecon_000484d8)(local_c4)" (parenthesized_expression "(*(code *)PTR_freecon_000484d8)" (( "(") (pointer_expression "*(code *)PTR_freecon_000484d8" (* "*") (cast_expression "(code *)PTR_freecon_000484d8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_freecon_000484d8"))) () ")")) (argument_list "(local_c4)" (( "(") (identifier "local_c4") () ")"))) (; ";")) (} "}")))))) (} "}")))) (if_statement "if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {\n    return ppppuVar2;\n  }" (if "if") (parenthesized_expression "(local_1c == *(char **)PTR___stack_chk_guard_000486a0)" (( "(") (binary_expression "local_1c == *(char **)PTR___stack_chk_guard_000486a0" (identifier "local_1c") (== "==") (pointer_expression "*(char **)PTR___stack_chk_guard_000486a0" (* "*") (cast_expression "(char **)PTR___stack_chk_guard_000486a0" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR___stack_chk_guard_000486a0")))) () ")")) (compound_statement "{\n    return ppppuVar2;\n  }" ({ "{") (return_statement "return ppppuVar2;" (return "return") (identifier "ppppuVar2") (; ";")) (} "}"))) (expression_statement "pcVar20 = defaultcon;" (assignment_expression "pcVar20 = defaultcon" (identifier "pcVar20") (= "=") (identifier "defaultcon")) (; ";")) (expression_statement "pcVar14 = local_1c;" (assignment_expression "pcVar14 = local_1c" (identifier "pcVar14") (= "=") (identifier "local_1c")) (; ";")) (expression_statement "puVar18 = PTR___stack_chk_fail_00048664;" (assignment_expression "puVar18 = PTR___stack_chk_fail_00048664" (identifier "puVar18") (= "=") (identifier "PTR___stack_chk_fail_00048664")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_00048664)();" (call_expression "(*(code *)PTR___stack_chk_fail_00048664)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00048664)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_00048664" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_00048664" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_00048664"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);" (assignment_expression "pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0)" (identifier "pcStack_fc") (= "=") (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" (* "*") (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" (* "*") (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299e0)" (( "(") (binary_expression "puVar18 + 0x299e0" (identifier "puVar18") (+ "+") (number_literal "0x299e0")) () ")"))))))) (; ";")) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" (identifier "uStack_10c") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" (identifier "uStack_108") (= "=") (number_literal "0")) (; ";")) (expression_statement "pppuStack_f4 = ppppuVar2;" (assignment_expression "pppuStack_f4 = ppppuVar2" (identifier "pppuStack_f4") (= "=") (identifier "ppppuVar2")) (; ";")) (expression_statement "pppuStack_f0 = unaff_s1;" (assignment_expression "pppuStack_f0 = unaff_s1" (identifier "pppuStack_f0") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "iStack_ec = unaff_s2;" (assignment_expression "iStack_ec = unaff_s2" (identifier "iStack_ec") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "iStack_e8 = unaff_s3;" (assignment_expression "iStack_e8 = unaff_s3" (identifier "iStack_e8") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_e4 = pcVar20;" (assignment_expression "pcStack_e4 = pcVar20" (identifier "pcStack_e4") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (*pcVar14 == '/') {\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }\n  else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" (if "if") (parenthesized_expression "(*pcVar14 == '/')" (( "(") (binary_expression "*pcVar14 == '/'" (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\nLAB_0001efc4:\n    pcVar4 = (char *)0x0;\n    pcVar16 = pcVar14;\n  }" ({ "{") (labeled_statement "LAB_0001efc4:\n    pcVar4 = (char *)0x0;" (statement_identifier "LAB_0001efc4") (: ":") (expression_statement "pcVar4 = (char *)0x0;" (assignment_expression "pcVar4 = (char *)0x0" (identifier "pcVar4") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "pcVar16 = pcVar14;" (assignment_expression "pcVar16 = pcVar14" (identifier "pcVar16") (= "=") (identifier "pcVar14")) (; ";")) (} "}")) (else_clause "else {\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" (else "else") (compound_statement "{\n    pcVar4 = (char *)canonicalize_filename_mode();\n    pcVar16 = pcVar4;\n    if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }\n  }" ({ "{") (expression_statement "pcVar4 = (char *)canonicalize_filename_mode();" (assignment_expression "pcVar4 = (char *)canonicalize_filename_mode()" (identifier "pcVar4") (= "=") (cast_expression "(char *)canonicalize_filename_mode()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "canonicalize_filename_mode()" (identifier "canonicalize_filename_mode") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pcVar16 = pcVar4;" (assignment_expression "pcVar16 = pcVar4" (identifier "pcVar16") (= "=") (identifier "pcVar4")) (; ";")) (if_statement "if (pcVar4 == (char *)0x0) {\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" (if "if") (parenthesized_expression "(pcVar4 == (char *)0x0)" (( "(") (binary_expression "pcVar4 == (char *)0x0" (identifier "pcVar4") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();\n      uVar13 = *puVar6;\n      ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);\n      uVar12 = quotearg_style(4,pcVar14);\n      pcVar14 = (char *)0x1;\n      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);\n      goto LAB_0001efc4;\n    }" ({ "{") (expression_statement "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))()" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x298ac))()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar18 + 0x298ac))()" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x298ac)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x298ac)" (* "*") (cast_expression "(code **)(puVar18 + 0x298ac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x298ac)" (( "(") (binary_expression "puVar18 + 0x298ac" (identifier "puVar18") (+ "+") (number_literal "0x298ac")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" (identifier "uVar13") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);" (assignment_expression "ppppuVar8 = (undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)\n                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (parenthesized_expression "(**(code **)(puVar18 + 0x299b0))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299b0)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299b0)" (* "*") (cast_expression "(code **)(puVar18 + 0x299b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299b0)" (( "(") (binary_expression "puVar18 + 0x299b0" (identifier "puVar18") (+ "+") (number_literal "0x299b0")) () ")"))))) () ")")) (argument_list "(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5)" (( "(") (number_literal "0") (, ",") (binary_expression "*(int *)(puVar18 + 0x2948c) + 0x5d20" (pointer_expression "*(int *)(puVar18 + 0x2948c)" (* "*") (cast_expression "(int *)(puVar18 + 0x2948c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + 0x2948c)" (( "(") (binary_expression "puVar18 + 0x2948c" (identifier "puVar18") (+ "+") (number_literal "0x2948c")) () ")")))) (+ "+") (number_literal "0x5d20")) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" (identifier "uVar12") (= "=") (call_expression "quotearg_style(4,pcVar14)" (identifier "quotearg_style") (argument_list "(4,pcVar14)" (( "(") (number_literal "4") (, ",") (identifier "pcVar14") () ")")))) (; ";")) (expression_statement "pcVar14 = (char *)0x1;" (assignment_expression "pcVar14 = (char *)0x1" (identifier "pcVar14") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);" (call_expression "(**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12)" (parenthesized_expression "(**(code **)(puVar18 + 0x29940))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29940)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29940)" (* "*") (cast_expression "(code **)(puVar18 + 0x29940)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29940)" (( "(") (binary_expression "puVar18 + 0x29940" (identifier "puVar18") (+ "+") (number_literal "0x29940")) () ")"))))) () ")")) (argument_list "(1,uVar13,ppppuVar8,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar13") (, ",") (identifier "ppppuVar8") (, ",") (identifier "uVar12") () ")"))) (; ";")) (goto_statement "goto LAB_0001efc4;" (goto "goto") (statement_identifier "LAB_0001efc4") (; ";")) (} "}"))) (} "}")))) (expression_statement "puVar6 = &uStack_10c;" (assignment_expression "puVar6 = &uStack_10c" (identifier "puVar6") (= "=") (pointer_expression "&uStack_10c" (& "&") (identifier "uStack_10c"))) (; ";")) (expression_statement "ppppuVar2 = ppppuVar8;" (assignment_expression "ppppuVar2 = ppppuVar8" (identifier "ppppuVar2") (= "=") (identifier "ppppuVar8")) (; ";")) (expression_statement "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(puVar18 + 0x29958))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x29958))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29958)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29958)" (* "*") (cast_expression "(code **)(puVar18 + 0x29958)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29958)" (( "(") (binary_expression "puVar18 + 0x29958" (identifier "puVar18") (+ "+") (number_literal "0x29958")) () ")"))))) () ")")) (argument_list "(pcVar16)" (( "(") (identifier "pcVar16") () ")")))) (; ";")) (if_statement "if (iVar1 < 0) {\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }\n  else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" (if "if") (parenthesized_expression "(iVar1 < 0)" (( "(") (binary_expression "iVar1 < 0" (identifier "iVar1") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);\n    if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n  }" ({ "{") (expression_statement "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);" (assignment_expression "piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" (identifier "piVar11") (= "=") (cast_expression "(int *)(**(code **)(puVar18 + 0x298ac))(pcVar16)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar18 + 0x298ac))(pcVar16)" (parenthesized_expression "(**(code **)(puVar18 + 0x298ac))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x298ac)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x298ac)" (* "*") (cast_expression "(code **)(puVar18 + 0x298ac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x298ac)" (( "(") (binary_expression "puVar18 + 0x298ac" (identifier "puVar18") (+ "+") (number_literal "0x298ac")) () ")"))))) () ")")) (argument_list "(pcVar16)" (( "(") (identifier "pcVar16") () ")"))))) (; ";")) (if_statement "if (*piVar11 == 2) {\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }\n    else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" (if "if") (parenthesized_expression "(*piVar11 == 2)" (( "(") (binary_expression "*piVar11 == 2" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n      *piVar11 = 0x3d;\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" ({ "{") (expression_statement "*piVar11 = 0x3d;" (assignment_expression "*piVar11 = 0x3d" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (= "=") (number_literal "0x3d")) (; ";")) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" (else "else") (compound_statement "{\n      iVar1 = 0;\n      iVar5 = 0;\n      ppppuVar8 = (undefined4 ****)0xffffffff;\n    }" ({ "{") (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" (else "else") (compound_statement "{\n    uStack_104 = 0;\n    pppuStack_100 = (undefined4 ****)0x0;\n    iVar1 = dir_name();\n    if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }\n    (**(code **)(puVar18 + 0x299e8))(iVar1);\n    (**(code **)(puVar18 + 0x29818))(uStack_104);\n    (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n    iVar1 = 0;\n    iVar5 = 0;\n    ppppuVar8 = (undefined4 ****)0xffffffff;\n  }" ({ "{") (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" (identifier "uStack_104") (= "=") (number_literal "0")) (; ";")) (expression_statement "pppuStack_100 = (undefined4 ****)0x0;" (assignment_expression "pppuStack_100 = (undefined4 ****)0x0" (identifier "pppuStack_100") (= "=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar1 = dir_name();" (assignment_expression "iVar1 = dir_name()" (identifier "iVar1") (= "=") (call_expression "dir_name()" (identifier "dir_name") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar1 != 0) {\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);\n      ppppuVar2 = &pppuStack_100;\n      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }\n    }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar18 + 0x29950))(&uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29950))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29950)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29950)" (* "*") (cast_expression "(code **)(puVar18 + 0x29950)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29950)" (( "(") (binary_expression "puVar18 + 0x29950" (identifier "puVar18") (+ "+") (number_literal "0x29950")) () ")"))))) () ")")) (argument_list "(&uStack_104)" (( "(") (pointer_expression "&uStack_104" (& "&") (identifier "uStack_104")) () ")")))) (; ";")) (expression_statement "ppppuVar2 = &pppuStack_100;" (assignment_expression "ppppuVar2 = &pppuStack_100" (identifier "ppppuVar2") (= "=") (pointer_expression "&pppuStack_100" (& "&") (identifier "pppuStack_100"))) (; ";")) (if_statement "if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)) {\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" (if "if") (parenthesized_expression "(((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0))" (( "(") (binary_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&\n         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" (parenthesized_expression "((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5))" (( "(") (binary_expression "(-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" (parenthesized_expression "(-1 < iVar5)" (( "(") (binary_expression "-1 < iVar5" (number_literal "-1") (< "<") (identifier "iVar5")) () ")")) (&& "&&") (parenthesized_expression "(iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)" (( "(") (comma_expression "iVar5 = rpl_getfilecon(iVar1), -1 < iVar5" (assignment_expression "iVar5 = rpl_getfilecon(iVar1)" (identifier "iVar5") (= "=") (call_expression "rpl_getfilecon(iVar1)" (identifier "rpl_getfilecon") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (, ",") (binary_expression "-1 < iVar5" (number_literal "-1") (< "<") (identifier "iVar5"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0)" (( "(") (comma_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),\n         puVar6 != (undefined4 *)0x0" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar18 + 0x297c4))(ppppuVar8)" (parenthesized_expression "(**(code **)(puVar18 + 0x297c4))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x297c4)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x297c4)" (* "*") (cast_expression "(code **)(puVar18 + 0x297c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x297c4)" (( "(") (binary_expression "puVar18 + 0x297c4" (identifier "puVar18") (+ "+") (number_literal "0x297c4")) () ")"))))) () ")")) (argument_list "(ppppuVar8)" (( "(") (identifier "ppppuVar8") () ")"))))) (, ",") (binary_expression "puVar6 != (undefined4 *)0x0" (identifier "puVar6") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (compound_statement "{\n        ppppuVar2 = (undefined4 ****)pppuStack_100;\n        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);\n        (**(code **)(puVar18 + 0x299e8))(iVar1);\n        (**(code **)(puVar18 + 0x29818))(uStack_104);\n        (**(code **)(puVar18 + 0x29818))(pppuStack_100);\n        if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }\n        goto LAB_0001eec0;\n      }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)pppuStack_100;" (assignment_expression "ppppuVar2 = (undefined4 ****)pppuStack_100" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)pppuStack_100" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "pppuStack_100"))) (; ";")) (expression_statement "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29830))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29830)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29830)" (* "*") (cast_expression "(code **)(puVar18 + 0x29830)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29830)" (( "(") (binary_expression "puVar18 + 0x29830" (identifier "puVar18") (+ "+") (number_literal "0x29830")) () ")"))))) () ")")) (argument_list "(uStack_104,pppuStack_100,puVar6,&uStack_108)" (( "(") (identifier "uStack_104") (, ",") (identifier "pppuStack_100") (, ",") (identifier "puVar6") (, ",") (pointer_expression "&uStack_108" (& "&") (identifier "uStack_108")) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299e8)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299e8)" (* "*") (cast_expression "(code **)(puVar18 + 0x299e8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299e8)" (( "(") (binary_expression "puVar18 + 0x299e8" (identifier "puVar18") (+ "+") (number_literal "0x299e8")) () ")"))))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(uStack_104)" (( "(") (identifier "uStack_104") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(pppuStack_100)" (( "(") (identifier "pppuStack_100") () ")"))) (; ";")) (if_statement "if (iVar5 < 0) {\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }\n        else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" (if "if") (parenthesized_expression "(iVar5 < 0)" (( "(") (binary_expression "iVar5 < 0" (identifier "iVar5") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          iVar1 = 0;\n          iVar5 = 0;\n          ppppuVar8 = (undefined4 ****)0xffffffff;\n        }" ({ "{") (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" (else "else") (compound_statement "{\n          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);\n          if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }\n        }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);" (assignment_expression "iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299cc)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299cc)" (* "*") (cast_expression "(code **)(puVar18 + 0x299cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299cc)" (( "(") (binary_expression "puVar18 + 0x299cc" (identifier "puVar18") (+ "+") (number_literal "0x299cc")) () ")"))))) () ")")) (argument_list "(uStack_10c)" (( "(") (identifier "uStack_10c") () ")")))) (; ";")) (if_statement "if (iVar5 == 0) {\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }\n          else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" (if "if") (parenthesized_expression "(iVar5 == 0)" (( "(") (binary_expression "iVar5 == 0" (identifier "iVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            ppppuVar8 = (undefined4 ****)0xffffffff;\n            iVar1 = 0;\n          }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" (else "else") (compound_statement "{\n            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);\n            if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }\n          }" ({ "{") (expression_statement "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);" (assignment_expression "iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(puVar18 + 0x299cc))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x299cc))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299cc)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299cc)" (* "*") (cast_expression "(code **)(puVar18 + 0x299cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299cc)" (( "(") (binary_expression "puVar18 + 0x299cc" (identifier "puVar18") (+ "+") (number_literal "0x299cc")) () ")"))))) () ")")) (argument_list "(uStack_108)" (( "(") (identifier "uStack_108") () ")")))) (; ";")) (if_statement "if (iVar1 == 0) {\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }\n            else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" (if "if") (parenthesized_expression "(iVar1 == 0)" (( "(") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              ppppuVar8 = (undefined4 ****)0xffffffff;\n            }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" (else "else") (compound_statement "{\n              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);\n              if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }\n            }" ({ "{") (expression_statement "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);" (assignment_expression "ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(**(code **)(puVar18 + 0x29a08))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29a08))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29a08)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29a08)" (* "*") (cast_expression "(code **)(puVar18 + 0x29a08)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29a08)" (( "(") (binary_expression "puVar18 + 0x29a08" (identifier "puVar18") (+ "+") (number_literal "0x29a08")) () ")"))))) () ")")) (argument_list "(iVar5)" (( "(") (identifier "iVar5") () ")"))))) (; ";")) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }\n              else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" (if "if") (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" (( "(") (binary_expression "ppppuVar2 == (undefined4 ****)0x0" (identifier "ppppuVar2") (== "==") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                ppppuVar8 = (undefined4 ****)0xffffffff;\n              }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" (else "else") (compound_statement "{\n                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);\n                if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }\n              }" ({ "{") (expression_statement "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1)" (identifier "iVar7") (= "=") (call_expression "(**(code **)(puVar18 + 0x29998))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29998))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29998)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29998)" (* "*") (cast_expression "(code **)(puVar18 + 0x29998)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29998)" (( "(") (binary_expression "puVar18 + 0x29998" (identifier "puVar18") (+ "+") (number_literal "0x29998")) () ")"))))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (if_statement "if (iVar7 == 0) {\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }\n                else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);\n                  if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }\n                }" ({ "{") (expression_statement "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);" (assignment_expression "iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1)" (identifier "iVar7") (= "=") (call_expression "(**(code **)(puVar18 + 0x297dc))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x297dc))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x297dc)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x297dc)" (* "*") (cast_expression "(code **)(puVar18 + 0x297dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x297dc)" (( "(") (binary_expression "puVar18 + 0x297dc" (identifier "puVar18") (+ "+") (number_literal "0x297dc")) () ")"))))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (if_statement "if (iVar7 == 0) {\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }\n                  else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)0xffffffff;\n                  }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" (else "else") (compound_statement "{\n                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);\n                  }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);" (assignment_expression "ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(**(code **)(puVar18 + 0x298e4))(iVar7)" (parenthesized_expression "(**(code **)(puVar18 + 0x298e4))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x298e4)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x298e4)" (* "*") (cast_expression "(code **)(puVar18 + 0x298e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x298e4)" (( "(") (binary_expression "puVar18 + 0x298e4" (identifier "puVar18") (+ "+") (number_literal "0x298e4")) () ")"))))) () ")")) (argument_list "(iVar7)" (( "(") (identifier "iVar7") () ")"))))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" (else "else") (compound_statement "{\n                  ppppuVar8 = (undefined4 ****)0xffffffff;\n                }" ({ "{") (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (} "}")))) (} "}")))) (} "}")))) (} "}")))) (goto_statement "goto LAB_0001eec0;" (goto "goto") (statement_identifier "LAB_0001eec0") (; ";")) (} "}"))) (} "}"))) (expression_statement "(**(code **)(puVar18 + 0x299e8))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x299e8))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299e8)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299e8)" (* "*") (cast_expression "(code **)(puVar18 + 0x299e8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299e8)" (( "(") (binary_expression "puVar18 + 0x299e8" (identifier "puVar18") (+ "+") (number_literal "0x299e8")) () ")"))))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_104);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_104)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(uStack_104)" (( "(") (identifier "uStack_104") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(pppuStack_100);" (call_expression "(**(code **)(puVar18 + 0x29818))(pppuStack_100)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(pppuStack_100)" (( "(") (identifier "pppuStack_100") () ")"))) (; ";")) (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)0xffffffff;" (assignment_expression "ppppuVar8 = (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (labeled_statement "LAB_0001eec0:\n  (**(code **)(puVar18 + 0x29910))(iVar5);" (statement_identifier "LAB_0001eec0") (: ":") (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar5);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar5)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29910)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29910)" (* "*") (cast_expression "(code **)(puVar18 + 0x29910)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29910)" (( "(") (binary_expression "puVar18 + 0x29910" (identifier "puVar18") (+ "+") (number_literal "0x29910")) () ")"))))) () ")")) (argument_list "(iVar5)" (( "(") (identifier "iVar5") () ")"))) (; ";"))) (expression_statement "(**(code **)(puVar18 + 0x29910))(iVar1);" (call_expression "(**(code **)(puVar18 + 0x29910))(iVar1)" (parenthesized_expression "(**(code **)(puVar18 + 0x29910))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29910)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29910)" (* "*") (cast_expression "(code **)(puVar18 + 0x29910)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29910)" (( "(") (binary_expression "puVar18 + 0x29910" (identifier "puVar18") (+ "+") (number_literal "0x29910")) () ")"))))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_10c);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_10c)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(uStack_10c)" (( "(") (identifier "uStack_10c") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x29818))(uStack_108);" (call_expression "(**(code **)(puVar18 + 0x29818))(uStack_108)" (parenthesized_expression "(**(code **)(puVar18 + 0x29818))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x29818)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x29818)" (* "*") (cast_expression "(code **)(puVar18 + 0x29818)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x29818)" (( "(") (binary_expression "puVar18 + 0x29818" (identifier "puVar18") (+ "+") (number_literal "0x29818")) () ")"))))) () ")")) (argument_list "(uStack_108)" (( "(") (identifier "uStack_108") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar18 + 0x299e8))(pcVar4);" (call_expression "(**(code **)(puVar18 + 0x299e8))(pcVar4)" (parenthesized_expression "(**(code **)(puVar18 + 0x299e8))" (( "(") (pointer_expression "**(code **)(puVar18 + 0x299e8)" (* "*") (pointer_expression "*(code **)(puVar18 + 0x299e8)" (* "*") (cast_expression "(code **)(puVar18 + 0x299e8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299e8)" (( "(") (binary_expression "puVar18 + 0x299e8" (identifier "puVar18") (+ "+") (number_literal "0x299e8")) () ")"))))) () ")")) (argument_list "(pcVar4)" (( "(") (identifier "pcVar4") () ")"))) (; ";")) (if_statement "if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {\n    return ppppuVar8;\n  }" (if "if") (parenthesized_expression "(pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0))" (( "(") (binary_expression "pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)" (identifier "pcStack_fc") (== "==") (cast_expression "(char *)**(undefined4 **)(puVar18 + 0x299e0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar18 + 0x299e0)" (* "*") (pointer_expression "*(undefined4 **)(puVar18 + 0x299e0)" (* "*") (cast_expression "(undefined4 **)(puVar18 + 0x299e0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299e0)" (( "(") (binary_expression "puVar18 + 0x299e0" (identifier "puVar18") (+ "+") (number_literal "0x299e0")) () ")"))))))) () ")")) (compound_statement "{\n    return ppppuVar8;\n  }" ({ "{") (return_statement "return ppppuVar8;" (return "return") (identifier "ppppuVar8") (; ";")) (} "}"))) (expression_statement "pcVar20 = *(code **)(puVar18 + 0x299a4);" (assignment_expression "pcVar20 = *(code **)(puVar18 + 0x299a4)" (identifier "pcVar20") (= "=") (pointer_expression "*(code **)(puVar18 + 0x299a4)" (* "*") (cast_expression "(code **)(puVar18 + 0x299a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + 0x299a4)" (( "(") (binary_expression "puVar18 + 0x299a4" (identifier "puVar18") (+ "+") (number_literal "0x299a4")) () ")"))))) (; ";")) (expression_statement "pcVar14 = pcStack_fc;" (assignment_expression "pcVar14 = pcStack_fc" (identifier "pcVar14") (= "=") (identifier "pcStack_fc")) (; ";")) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar19 = pcVar20 + 0x31068;" (assignment_expression "pcVar19 = pcVar20 + 0x31068" (identifier "pcVar19") (= "=") (binary_expression "pcVar20 + 0x31068" (identifier "pcVar20") (+ "+") (number_literal "0x31068"))) (; ";")) (expression_statement "iStack_144 = **(int **)(pcVar20 + 0x295f8);" (assignment_expression "iStack_144 = **(int **)(pcVar20 + 0x295f8)" (identifier "iStack_144") (= "=") (pointer_expression "**(int **)(pcVar20 + 0x295f8)" (* "*") (pointer_expression "*(int **)(pcVar20 + 0x295f8)" (* "*") (cast_expression "(int **)(pcVar20 + 0x295f8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295f8)" (( "(") (binary_expression "pcVar20 + 0x295f8" (identifier "pcVar20") (+ "+") (number_literal "0x295f8")) () ")")))))) (; ";")) (expression_statement "puVar10 = puVar6;" (assignment_expression "puVar10 = puVar6" (identifier "puVar10") (= "=") (identifier "puVar6")) (; ";")) (expression_statement "iStack_140 = iVar1;" (assignment_expression "iStack_140 = iVar1" (identifier "iStack_140") (= "=") (identifier "iVar1")) (; ";")) (expression_statement "iStack_13c = iVar5;" (assignment_expression "iStack_13c = iVar5" (identifier "iStack_13c") (= "=") (identifier "iVar5")) (; ";")) (expression_statement "pppuStack_138 = ppppuVar8;" (assignment_expression "pppuStack_138 = ppppuVar8" (identifier "pppuStack_138") (= "=") (identifier "ppppuVar8")) (; ";")) (expression_statement "pcStack_134 = pcVar4;" (assignment_expression "pcStack_134 = pcVar4" (identifier "pcStack_134") (= "=") (identifier "pcVar4")) (; ";")) (if_statement "if (*pcVar14 != '/') {\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" (if "if") (parenthesized_expression "(*pcVar14 != '/')" (( "(") (binary_expression "*pcVar14 != '/'" (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n    puVar15 = puVar6;\n    if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }\n    pcStack_14c = (char *)canonicalize_filename_mode();\n    pcVar16 = pcStack_14c;\n    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;\n    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();\n    ppppuVar2 = (undefined4 ****)*puVar9;\n    puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);\n    uVar12 = quotearg_style(4,pcVar14);\n    puVar6 = puVar10;\n    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);\n  }" ({ "{") (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" (identifier "puVar15") (= "=") (identifier "puVar6")) (; ";")) (if_statement "if (puVar6 != (undefined4 *)0x0) {\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" (if "if") (parenthesized_expression "(puVar6 != (undefined4 *)0x0)" (( "(") (binary_expression "puVar6 != (undefined4 *)0x0" (identifier "puVar6") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pcStack_14c = pcVar14;\n      pcVar16 = (char *)0x0;\n      goto LAB_0001f108;\n    }" ({ "{") (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" (identifier "pcStack_14c") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" (identifier "pcVar16") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_0001f108;" (goto "goto") (statement_identifier "LAB_0001f108") (; ";")) (} "}"))) (expression_statement "pcStack_14c = (char *)canonicalize_filename_mode();" (assignment_expression "pcStack_14c = (char *)canonicalize_filename_mode()" (identifier "pcStack_14c") (= "=") (cast_expression "(char *)canonicalize_filename_mode()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "canonicalize_filename_mode()" (identifier "canonicalize_filename_mode") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pcVar16 = pcStack_14c;" (assignment_expression "pcVar16 = pcStack_14c" (identifier "pcVar16") (= "=") (identifier "pcStack_14c")) (; ";")) (if_statement "if (pcStack_14c != (char *)0x0) goto LAB_0001f108;" (if "if") (parenthesized_expression "(pcStack_14c != (char *)0x0)" (( "(") (binary_expression "pcStack_14c != (char *)0x0" (identifier "pcStack_14c") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0001f108;" (goto "goto") (statement_identifier "LAB_0001f108") (; ";"))) (expression_statement "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))()" (identifier "puVar9") (= "=") (cast_expression "(uint *)(**(code **)(pcVar20 + 0x294c4))()" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x294c4)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x294c4)" (* "*") (cast_expression "(code **)(pcVar20 + 0x294c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x294c4)" (( "(") (binary_expression "pcVar20 + 0x294c4" (identifier "pcVar20") (+ "+") (number_literal "0x294c4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)*puVar9;" (assignment_expression "ppppuVar2 = (undefined4 ****)*puVar9" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)*puVar9" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (pointer_expression "*puVar9" (* "*") (identifier "puVar9")))) (; ";")) (expression_statement "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);" (assignment_expression "puVar10 = (undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (identifier "puVar10") (= "=") (cast_expression "(undefined4 *)\n              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x295c8)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x295c8)" (* "*") (cast_expression "(code **)(pcVar20 + 0x295c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295c8)" (( "(") (binary_expression "pcVar20 + 0x295c8" (identifier "pcVar20") (+ "+") (number_literal "0x295c8")) () ")"))))) () ")")) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5)" (( "(") (number_literal "0") (, ",") (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d20" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" (* "*") (cast_expression "(int *)(pcVar20 + 0x290a4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x290a4)" (( "(") (binary_expression "pcVar20 + 0x290a4" (identifier "pcVar20") (+ "+") (number_literal "0x290a4")) () ")")))) (+ "+") (number_literal "0x5d20")) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "uVar12 = quotearg_style(4,pcVar14);" (assignment_expression "uVar12 = quotearg_style(4,pcVar14)" (identifier "uVar12") (= "=") (call_expression "quotearg_style(4,pcVar14)" (identifier "quotearg_style") (argument_list "(4,pcVar14)" (( "(") (number_literal "4") (, ",") (identifier "pcVar14") () ")")))) (; ";")) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" (identifier "puVar6") (= "=") (identifier "puVar10")) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29558)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29558)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29558)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29558)" (( "(") (binary_expression "pcVar20 + 0x29558" (identifier "pcVar20") (+ "+") (number_literal "0x29558")) () ")"))))) () ")")) (argument_list "(1,ppppuVar2,puVar10,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "ppppuVar2") (, ",") (identifier "puVar10") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar15 = puVar6;" (assignment_expression "puVar15 = puVar6" (identifier "puVar15") (= "=") (identifier "puVar6")) (; ";")) (expression_statement "pcStack_14c = pcVar14;" (assignment_expression "pcStack_14c = pcVar14" (identifier "pcStack_14c") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "puVar6 = puVar10;" (assignment_expression "puVar6 = puVar10" (identifier "puVar6") (= "=") (identifier "puVar10")) (; ";")) (expression_statement "pcVar16 = (char *)0x0;" (assignment_expression "pcVar16 = (char *)0x0" (identifier "pcVar16") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_0001f108:\n  uStack_148 = 0;" (statement_identifier "LAB_0001f108") (: ":") (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" (identifier "uStack_148") (= "=") (number_literal "0")) (; ";"))) (if_statement "if (ppppuVar2 == (undefined4 ****)0x0) {\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }\n  else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" (if "if") (parenthesized_expression "(ppppuVar2 == (undefined4 ****)0x0)" (( "(") (binary_expression "ppppuVar2 == (undefined4 ****)0x0" (identifier "ppppuVar2") (== "==") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);\n  }" ({ "{") (expression_statement "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6);" (assignment_expression "iVar1 = FUN_0001e8d0(pcStack_14c,puVar6)" (identifier "iVar1") (= "=") (call_expression "FUN_0001e8d0(pcStack_14c,puVar6)" (identifier "FUN_0001e8d0") (argument_list "(pcStack_14c,puVar6)" (( "(") (identifier "pcStack_14c") (, ",") (identifier "puVar6") () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29600)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29600)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29600)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29600)" (( "(") (binary_expression "pcVar20 + 0x29600" (identifier "pcVar20") (+ "+") (number_literal "0x29600")) () ")"))))) () ")")) (argument_list "(pcVar16)" (( "(") (identifier "pcVar16") () ")"))) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);" (assignment_expression "ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1)" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)(uint)(iVar1 != -1)" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "(uint)(iVar1 != -1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar1 != -1)" (( "(") (binary_expression "iVar1 != -1" (identifier "iVar1") (!= "!=") (number_literal "-1")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" (else "else") (compound_statement "{\n    iVar1 = xfts_open(&pcStack_14c,0x10,0);\n    iVar5 = *(int *)(pcVar20 + 0x291b0);\n    while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }\n    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();\n    iVar5 = *piVar11;\n    if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    iVar1 = fts_close(iVar1);\n    puVar15 = (undefined4 *)0x5;\n    if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }\n    (**(code **)(pcVar20 + 0x29600))(pcVar16);\n  }" ({ "{") (expression_statement "iVar1 = xfts_open(&pcStack_14c,0x10,0);" (assignment_expression "iVar1 = xfts_open(&pcStack_14c,0x10,0)" (identifier "iVar1") (= "=") (call_expression "xfts_open(&pcStack_14c,0x10,0)" (identifier "xfts_open") (argument_list "(&pcStack_14c,0x10,0)" (( "(") (pointer_expression "&pcStack_14c" (& "&") (identifier "pcStack_14c")) (, ",") (number_literal "0x10") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "iVar5 = *(int *)(pcVar20 + 0x291b0);" (assignment_expression "iVar5 = *(int *)(pcVar20 + 0x291b0)" (identifier "iVar5") (= "=") (pointer_expression "*(int *)(pcVar20 + 0x291b0)" (* "*") (cast_expression "(int *)(pcVar20 + 0x291b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x291b0)" (( "(") (binary_expression "pcVar20 + 0x291b0" (identifier "pcVar20") (+ "+") (number_literal "0x291b0")) () ")"))))) (; ";")) (while_statement "while (iVar7 = fts_read(iVar1), iVar7 != 0) {\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" (while "while") (parenthesized_expression "(iVar7 = fts_read(iVar1), iVar7 != 0)" (( "(") (comma_expression "iVar7 = fts_read(iVar1), iVar7 != 0" (assignment_expression "iVar7 = fts_read(iVar1)" (identifier "iVar7") (= "=") (call_expression "fts_read(iVar1)" (identifier "fts_read") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (, ",") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));\n      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));\n    }" ({ "{") (expression_statement "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));" (assignment_expression "iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" (identifier "iVar7") (= "=") (call_expression "(*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18))" (parenthesized_expression "(*(code *)(iVar5 + -0x1730))" (( "(") (pointer_expression "*(code *)(iVar5 + -0x1730)" (* "*") (cast_expression "(code *)(iVar5 + -0x1730)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar5 + -0x1730)" (( "(") (binary_expression "iVar5 + -0x1730" (identifier "iVar5") (+ "+") (number_literal "-0x1730")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(iVar1 + 0x18))" (( "(") (pointer_expression "*(undefined4 *)(iVar1 + 0x18)" (* "*") (cast_expression "(undefined4 *)(iVar1 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x18)" (( "(") (binary_expression "iVar1 + 0x18" (identifier "iVar1") (+ "+") (number_literal "0x18")) () ")")))) () ")")))) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));" (assignment_expression "ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1))" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "((uint)ppppuVar2 & (uint)(iVar7 != -1))" (( "(") (binary_expression "(uint)ppppuVar2 & (uint)(iVar7 != -1)" (cast_expression "(uint)ppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppuVar2")) (& "&") (call_expression "(uint)(iVar7 != -1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar7 != -1)" (( "(") (binary_expression "iVar7 != -1" (identifier "iVar7") (!= "!=") (number_literal "-1")) () ")")))) () ")")))) (; ";")) (} "}"))) (expression_statement "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();" (assignment_expression "piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))()" (identifier "piVar11") (= "=") (cast_expression "(int *)(**(code **)(pcVar20 + 0x294c4))()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x294c4))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x294c4))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x294c4)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x294c4)" (* "*") (cast_expression "(code **)(pcVar20 + 0x294c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x294c4)" (( "(") (binary_expression "pcVar20 + 0x294c4" (identifier "pcVar20") (+ "+") (number_literal "0x294c4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar5 = *piVar11;" (assignment_expression "iVar5 = *piVar11" (identifier "iVar5") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (if_statement "if (iVar5 != 0) {\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" (if "if") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" ({ "{") (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x295c8)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x295c8)" (* "*") (cast_expression "(code **)(pcVar20 + 0x295c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295c8)" (( "(") (binary_expression "pcVar20 + 0x295c8" (identifier "pcVar20") (+ "+") (number_literal "0x295c8")) () ")"))))) () ")")) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5)" (( "(") (number_literal "0") (, ",") (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d38" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" (* "*") (cast_expression "(int *)(pcVar20 + 0x290a4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x290a4)" (( "(") (binary_expression "pcVar20 + 0x290a4" (identifier "pcVar20") (+ "+") (number_literal "0x290a4")) () ")")))) (+ "+") (number_literal "0x5d38")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29558)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29558)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29558)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29558)" (( "(") (binary_expression "pcVar20 + 0x29558" (identifier "pcVar20") (+ "+") (number_literal "0x29558")) () ")"))))) () ")")) (argument_list "(0,iVar5,uVar12)" (( "(") (number_literal "0") (, ",") (identifier "iVar5") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (expression_statement "iVar1 = fts_close(iVar1);" (assignment_expression "iVar1 = fts_close(iVar1)" (identifier "iVar1") (= "=") (call_expression "fts_close(iVar1)" (identifier "fts_close") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (expression_statement "puVar15 = (undefined4 *)0x5;" (assignment_expression "puVar15 = (undefined4 *)0x5" (identifier "puVar15") (= "=") (cast_expression "(undefined4 *)0x5" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (if_statement "if (iVar1 != 0) {\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar1 = *piVar11;\n      puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);\n      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);\n      ppppuVar2 = (undefined4 ****)0x0;\n    }" ({ "{") (expression_statement "iVar1 = *piVar11;" (assignment_expression "iVar1 = *piVar11" (identifier "iVar1") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (expression_statement "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);" (assignment_expression "puVar15 = (undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (identifier "puVar15") (= "=") (cast_expression "(undefined4 *)\n                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x295c8))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x295c8)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x295c8)" (* "*") (cast_expression "(code **)(pcVar20 + 0x295c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295c8)" (( "(") (binary_expression "pcVar20 + 0x295c8" (identifier "pcVar20") (+ "+") (number_literal "0x295c8")) () ")"))))) () ")")) (argument_list "(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5)" (( "(") (number_literal "0") (, ",") (binary_expression "*(int *)(pcVar20 + 0x290a4) + 0x5d48" (pointer_expression "*(int *)(pcVar20 + 0x290a4)" (* "*") (cast_expression "(int *)(pcVar20 + 0x290a4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x290a4)" (( "(") (binary_expression "pcVar20 + 0x290a4" (identifier "pcVar20") (+ "+") (number_literal "0x290a4")) () ")")))) (+ "+") (number_literal "0x5d48")) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);" (call_expression "(**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29558))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29558)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29558)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29558)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29558)" (( "(") (binary_expression "pcVar20 + 0x29558" (identifier "pcVar20") (+ "+") (number_literal "0x29558")) () ")"))))) () ")")) (argument_list "(0,iVar1,puVar15)" (( "(") (number_literal "0") (, ",") (identifier "iVar1") (, ",") (identifier "puVar15") () ")"))) (; ";")) (expression_statement "ppppuVar2 = (undefined4 ****)0x0;" (assignment_expression "ppppuVar2 = (undefined4 ****)0x0" (identifier "ppppuVar2") (= "=") (cast_expression "(undefined4 ****)0x0" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar20 + 0x29600))(pcVar16);" (call_expression "(**(code **)(pcVar20 + 0x29600))(pcVar16)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29600))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29600)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29600)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29600)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29600)" (( "(") (binary_expression "pcVar20 + 0x29600" (identifier "pcVar20") (+ "+") (number_literal "0x29600")) () ")"))))) () ")")) (argument_list "(pcVar16)" (( "(") (identifier "pcVar16") () ")"))) (; ";")) (} "}")))) (if_statement "if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" (if "if") (parenthesized_expression "(iStack_144 != **(int **)(pcVar20 + 0x295f8))" (( "(") (binary_expression "iStack_144 != **(int **)(pcVar20 + 0x295f8)" (identifier "iStack_144") (!= "!=") (pointer_expression "**(int **)(pcVar20 + 0x295f8)" (* "*") (pointer_expression "*(int **)(pcVar20 + 0x295f8)" (* "*") (cast_expression "(int **)(pcVar20 + 0x295f8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295f8)" (( "(") (binary_expression "pcVar20 + 0x295f8" (identifier "pcVar20") (+ "+") (number_literal "0x295f8")) () ")")))))) () ")")) (compound_statement "{\n    pcVar20 = *(code **)(pcVar20 + 0x295bc);\n    iVar1 = iStack_144;\n    (*pcVar20)();\n    ppppuVar8 = (undefined4 ****)qcopy_acl();\n    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }\n    return ppppuVar8;\n  }" ({ "{") (expression_statement "pcVar20 = *(code **)(pcVar20 + 0x295bc);" (assignment_expression "pcVar20 = *(code **)(pcVar20 + 0x295bc)" (identifier "pcVar20") (= "=") (pointer_expression "*(code **)(pcVar20 + 0x295bc)" (* "*") (cast_expression "(code **)(pcVar20 + 0x295bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x295bc)" (( "(") (binary_expression "pcVar20 + 0x295bc" (identifier "pcVar20") (+ "+") (number_literal "0x295bc")) () ")"))))) (; ";")) (expression_statement "iVar1 = iStack_144;" (assignment_expression "iVar1 = iStack_144" (identifier "iVar1") (= "=") (identifier "iStack_144")) (; ";")) (expression_statement "(*pcVar20)();" (call_expression "(*pcVar20)()" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppppuVar8 = (undefined4 ****)qcopy_acl();" (assignment_expression "ppppuVar8 = (undefined4 ****)qcopy_acl()" (identifier "ppppuVar8") (= "=") (cast_expression "(undefined4 ****)qcopy_acl()" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "qcopy_acl()" (identifier "qcopy_acl") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }\n    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" (if "if") (parenthesized_expression "(ppppuVar8 == (undefined4 ****)&SUB_fffffffe)" (( "(") (binary_expression "ppppuVar8 == (undefined4 ****)&SUB_fffffffe" (identifier "ppppuVar8") (== "==") (cast_expression "(undefined4 ****)&SUB_fffffffe" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (pointer_expression "&SUB_fffffffe" (& "&") (identifier "SUB_fffffffe")))) () ")")) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar13 = *puVar6;\n      uVar12 = quote(iVar1);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;\n    }" ({ "{") (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x291fc)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x291fc)" (* "*") (cast_expression "(code **)(pcVar20 + 0x291fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x291fc)" (( "(") (binary_expression "pcVar20 + 0x291fc" (identifier "pcVar20") (+ "+") (number_literal "0x291fc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar13 = *puVar6;" (assignment_expression "uVar13 = *puVar6" (identifier "uVar13") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "uVar12 = quote(iVar1);" (assignment_expression "uVar12 = quote(iVar1)" (identifier "uVar12") (= "=") (call_expression "quote(iVar1)" (identifier "quote") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)\n      ;" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29290)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29290)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29290)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29290)" (( "(") (binary_expression "pcVar20 + 0x29290" (identifier "pcVar20") (+ "+") (number_literal "0x29290")) () ")"))))) () ")")) (argument_list "(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)" (( "(") (number_literal "0") (, ",") (identifier "uVar13") (, ",") (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x57f4" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" (* "*") (cast_expression "(int *)(pcVar20 + 0x28ddc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x28ddc)" (( "(") (binary_expression "pcVar20 + 0x28ddc" (identifier "pcVar20") (+ "+") (number_literal "0x28ddc")) () ")")))) (+ "+") (number_literal "0x57f4")) (, ",") (identifier "uVar12") (, ",") (identifier "pcVar19") () ")"))) (; ";")) (} "}")) (else_clause "else if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" (else "else") (if_statement "if (ppppuVar8 == (undefined4 ****)0xffffffff) {\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" (if "if") (parenthesized_expression "(ppppuVar8 == (undefined4 ****)0xffffffff)" (( "(") (binary_expression "ppppuVar8 == (undefined4 ****)0xffffffff" (identifier "ppppuVar8") (== "==") (cast_expression "(undefined4 ****)0xffffffff" (( "(") (type_descriptor "undefined4 ****" (type_identifier "undefined4") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();\n      uVar17 = *puVar6;\n      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);\n      uVar13 = quote(puVar15);\n      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);\n    }" ({ "{") (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(**(code **)(pcVar20 + 0x291fc))()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar20 + 0x291fc))()" (parenthesized_expression "(**(code **)(pcVar20 + 0x291fc))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x291fc)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x291fc)" (* "*") (cast_expression "(code **)(pcVar20 + 0x291fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x291fc)" (( "(") (binary_expression "pcVar20 + 0x291fc" (identifier "pcVar20") (+ "+") (number_literal "0x291fc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar17 = *puVar6;" (assignment_expression "uVar17 = *puVar6" (identifier "uVar17") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);" (assignment_expression "uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29300))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29300)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29300)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29300)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29300)" (( "(") (binary_expression "pcVar20 + 0x29300" (identifier "pcVar20") (+ "+") (number_literal "0x29300")) () ")"))))) () ")")) (argument_list "(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5)" (( "(") (number_literal "0") (, ",") (binary_expression "*(int *)(pcVar20 + 0x28ddc) + 0x5a30" (pointer_expression "*(int *)(pcVar20 + 0x28ddc)" (* "*") (cast_expression "(int *)(pcVar20 + 0x28ddc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0x28ddc)" (( "(") (binary_expression "pcVar20 + 0x28ddc" (identifier "pcVar20") (+ "+") (number_literal "0x28ddc")) () ")")))) (+ "+") (number_literal "0x5a30")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "uVar13 = quote(puVar15);" (assignment_expression "uVar13 = quote(puVar15)" (identifier "uVar13") (= "=") (call_expression "quote(puVar15)" (identifier "quote") (argument_list "(puVar15)" (( "(") (identifier "puVar15") () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);" (call_expression "(**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13)" (parenthesized_expression "(**(code **)(pcVar20 + 0x29290))" (( "(") (pointer_expression "**(code **)(pcVar20 + 0x29290)" (* "*") (pointer_expression "*(code **)(pcVar20 + 0x29290)" (* "*") (cast_expression "(code **)(pcVar20 + 0x29290)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x29290)" (( "(") (binary_expression "pcVar20 + 0x29290" (identifier "pcVar20") (+ "+") (number_literal "0x29290")) () ")"))))) () ")")) (argument_list "(0,uVar17,uVar12,uVar13)" (( "(") (number_literal "0") (, ",") (identifier "uVar17") (, ",") (identifier "uVar12") (, ",") (identifier "uVar13") () ")"))) (; ";")) (} "}"))))) (return_statement "return ppppuVar8;" (return "return") (identifier "ppppuVar8") (; ";")) (} "}"))) (return_statement "return ppppuVar2;" (return "return") (identifier "ppppuVar2") (; ";")) (} "}")))
(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))) (parameter_declaration type: (primitive_type) declarator: (identifier)))))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))) (declaration type: (type_identifier) 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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (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: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (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 (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (goto_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (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)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (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: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (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 (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))))))))) (goto_statement label: (statement_identifier)))) (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: (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 (identifier))))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) 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 (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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: (type_identifier) 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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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)) value: (call_expression function: (identifier) 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)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (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) (identifier)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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 (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: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) 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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator 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)))) (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 (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (number_literal) right: (identifier)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) 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))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier) (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 (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)))) (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (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 (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))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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))))) (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 (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)))) (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 (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: (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: (identifier))) (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: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) 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)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (type_identifier) 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: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (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))))))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (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))))) (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) 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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) consequence: (compound_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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 (number_literal) (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (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) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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 (number_literal) (identifier) (identifier) (identifier)))))))) (return_statement (identifier)))) (return_statement (identifier)))))

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

{
  int iVar1;
  undefined4 ****ppppuVar2;
  undefined4 ****ppppuVar3;
  char *pcVar4;
  int iVar5;
  undefined4 *puVar6;
  int iVar7;
  undefined4 ****ppppuVar8;
  uint *puVar9;
  undefined4 *puVar10;
  int *piVar11;
  undefined4 uVar12;
  undefined4 uVar13;
  char *pcVar14;
  undefined4 *puVar15;
  char *pcVar16;
  undefined4 ****unaff_s1;
  int unaff_s2;
  undefined4 uVar17;
  int unaff_s3;
  undefined *puVar18;
  code *pcVar19;
  code *pcVar20;
  char *pcStack_14c;
  undefined4 uStack_148;
  int iStack_144;
  int iStack_140;
  int iStack_13c;
  undefined4 ***pppuStack_138;
  char *pcStack_134;
  undefined4 uStack_10c;
  undefined4 uStack_108;
  undefined4 uStack_104;
  undefined4 ***pppuStack_100;
  char *pcStack_fc;
  undefined4 ***pppuStack_f4;
  undefined4 ***pppuStack_f0;
  int iStack_ec;
  int iStack_e8;
  code *pcStack_e4;
  undefined4 local_c8;
  undefined4 ***local_c4;
  undefined1 auStack_c0 [24];
  undefined4 ***local_a8;
  char *local_1c;
  
  local_1c = *(char **)PTR___stack_chk_guard_000486a0;
  local_c8 = 0;
  local_c4 = (undefined4 ****)0x0;
  if (param_2 == 0) {
    ppppuVar8 = (undefined4 ****)0x20000;
    unaff_s1 = (undefined4 ****)(*(code *)PTR_open64_000485a0)();
    ppppuVar2 = unaff_s1;
    if (unaff_s1 == (undefined4 ****)0xffffffff) {
      piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)();
      unaff_s3 = 0;
      if (*piVar11 == 0x5a) {
        ppppuVar8 = param_1;
        iVar1 = (*(code *)PTR___lxstat64_0004848c)(3,param_1,auStack_c0);
        if (-1 < iVar1) goto LAB_0001e9d0;
        unaff_s3 = 0;
        unaff_s2 = 0;
      }
      else {
        unaff_s2 = 0;
      }
      goto LAB_0001eb5c;
    }
    ppppuVar8 = unaff_s1;
    iVar1 = (*(code *)PTR___fxstat64_00048628)(3);
    unaff_s3 = 0;
    if (iVar1 < 0) {
      unaff_s2 = 0;
      ppppuVar2 = (undefined4 ****)0xffffffff;
LAB_0001eb48:
      (*(code *)PTR_close_00048480)(unaff_s1);
    }
    else {
LAB_0001e9d0:
      iVar1 = (*(code *)PTR_matchpathcon_00048618)(param_1,local_a8,&local_c8);
      if (iVar1 < 0) {
        piVar11 = (int *)(*(code *)PTR___errno_location_0004856c)(local_c8);
        if (*piVar11 == 2) {
          *piVar11 = 0x3d;
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
        else {
          unaff_s3 = 0;
          unaff_s2 = 0;
        }
LAB_0001eb3c:
        ppppuVar8 = (undefined4 ****)local_a8;
        if (unaff_s1 != (undefined4 ****)0xffffffff) {
          ppppuVar2 = (undefined4 ****)0xffffffff;
          goto LAB_0001eb48;
        }
      }
      else {
        unaff_s2 = (*(code *)PTR_context_new_0004868c)();
        if (unaff_s2 == 0) {
          unaff_s3 = 0;
          goto LAB_0001eb3c;
        }
        ppppuVar8 = &local_c4;
        if (unaff_s1 != (undefined4 ****)0xffffffff) {
          iVar1 = rpl_fgetfilecon(unaff_s1);
          if (iVar1 < 0) {
            unaff_s3 = 0;
            ppppuVar2 = (undefined4 ****)0xffffffff;
          }
          else {
            unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);
            if (unaff_s3 == 0) {
              ppppuVar2 = (undefined4 ****)0xffffffff;
            }
            else {
              ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2);
              ppppuVar3 = ppppuVar8;
              if (ppppuVar8 != (undefined4 ****)0x0) goto LAB_0001ea64;
              ppppuVar2 = (undefined4 ****)0xffffffff;
            }
          }
          goto LAB_0001eb48;
        }
        iVar1 = rpl_lgetfilecon(param_1);
        if (iVar1 < 0) {
          unaff_s3 = 0;
        }
        else {
          unaff_s3 = (*(code *)PTR_context_new_0004868c)(local_c4);
          if ((unaff_s3 != 0) &&
             (ppppuVar3 = (undefined4 ****)(*(code *)PTR_context_type_get_000486c8)(unaff_s2),
             ppppuVar8 = ppppuVar3, ppppuVar3 != (undefined4 ****)0x0)) {
LAB_0001ea64:
            iVar1 = (*(code *)PTR_context_type_set_00048658)(unaff_s3);
            local_a8 = ppppuVar3;
            if ((iVar1 != 0) ||
               (ppppuVar8 = (undefined4 ****)(*(code *)PTR_context_str_0004849c)(unaff_s3),
               local_a8 = ppppuVar3, ppppuVar8 == (undefined4 ****)0x0)) goto LAB_0001eb3c;
            if (unaff_s1 != (undefined4 ****)0xffffffff) {
              ppppuVar2 = (undefined4 ****)(*(code *)PTR_fsetfilecon_00048528)(unaff_s1);
              goto LAB_0001eb48;
            }
            unaff_s1 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)(param_1);
            ppppuVar2 = unaff_s1;
          }
        }
      }
    }
LAB_0001eb5c:
    (*(code *)PTR_context_free_000485d0)(unaff_s2);
    (*(code *)PTR_context_free_000485d0)(unaff_s3);
    (*(code *)PTR_freecon_000484d8)(local_c8);
    (*(code *)PTR_freecon_000484d8)(local_c4);
  }
  else {
    iVar1 = (*(code *)PTR_getfscreatecon_000484ac)(&local_c4);
    ppppuVar8 = (undefined4 ****)local_c4;
    if (iVar1 < 0) {
      ppppuVar2 = (undefined4 ****)0xffffffff;
    }
    else if ((undefined4 ****)local_c4 == (undefined4 ****)0x0) {
      puVar6 = (undefined4 *)(*(code *)PTR___errno_location_0004856c)(param_1);
      *puVar6 = 0x3d;
      ppppuVar2 = (undefined4 ****)0xffffffff;
    }
    else {
      ppppuVar2 = (undefined4 ****)(*(code *)PTR_lsetfilecon_000486b4)();
      (*(code *)PTR_freecon_000484d8)(local_c4);
    }
  }
  if (local_1c == *(char **)PTR___stack_chk_guard_000486a0) {
    return ppppuVar2;
  }
  pcVar20 = defaultcon;
  pcVar14 = local_1c;
  puVar18 = PTR___stack_chk_fail_00048664;
  (*(code *)PTR___stack_chk_fail_00048664)();
  pcStack_fc = (char *)**(undefined4 **)(puVar18 + 0x299e0);
  uStack_10c = 0;
  uStack_108 = 0;
  pppuStack_f4 = ppppuVar2;
  pppuStack_f0 = unaff_s1;
  iStack_ec = unaff_s2;
  iStack_e8 = unaff_s3;
  pcStack_e4 = pcVar20;
  if (*pcVar14 == '/') {
LAB_0001efc4:
    pcVar4 = (char *)0x0;
    pcVar16 = pcVar14;
  }
  else {
    pcVar4 = (char *)canonicalize_filename_mode();
    pcVar16 = pcVar4;
    if (pcVar4 == (char *)0x0) {
      puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x298ac))();
      uVar13 = *puVar6;
      ppppuVar8 = (undefined4 ****)
                  (**(code **)(puVar18 + 0x299b0))(0,*(int *)(puVar18 + 0x2948c) + 0x5d20,5);
      uVar12 = quotearg_style(4,pcVar14);
      pcVar14 = (char *)0x1;
      (**(code **)(puVar18 + 0x29940))(1,uVar13,ppppuVar8,uVar12);
      goto LAB_0001efc4;
    }
  }
  puVar6 = &uStack_10c;
  ppppuVar2 = ppppuVar8;
  iVar1 = (**(code **)(puVar18 + 0x29958))(pcVar16);
  if (iVar1 < 0) {
    piVar11 = (int *)(**(code **)(puVar18 + 0x298ac))(pcVar16);
    if (*piVar11 == 2) {
      *piVar11 = 0x3d;
      iVar1 = 0;
      iVar5 = 0;
      ppppuVar8 = (undefined4 ****)0xffffffff;
    }
    else {
      iVar1 = 0;
      iVar5 = 0;
      ppppuVar8 = (undefined4 ****)0xffffffff;
    }
  }
  else {
    uStack_104 = 0;
    pppuStack_100 = (undefined4 ****)0x0;
    iVar1 = dir_name();
    if (iVar1 != 0) {
      iVar5 = (**(code **)(puVar18 + 0x29950))(&uStack_104);
      ppppuVar2 = &pppuStack_100;
      if (((-1 < iVar5) && (iVar5 = rpl_getfilecon(iVar1), -1 < iVar5)) &&
         (puVar6 = (undefined4 *)(**(code **)(puVar18 + 0x297c4))(ppppuVar8),
         puVar6 != (undefined4 *)0x0)) {
        ppppuVar2 = (undefined4 ****)pppuStack_100;
        iVar5 = (**(code **)(puVar18 + 0x29830))(uStack_104,pppuStack_100,puVar6,&uStack_108);
        (**(code **)(puVar18 + 0x299e8))(iVar1);
        (**(code **)(puVar18 + 0x29818))(uStack_104);
        (**(code **)(puVar18 + 0x29818))(pppuStack_100);
        if (iVar5 < 0) {
          iVar1 = 0;
          iVar5 = 0;
          ppppuVar8 = (undefined4 ****)0xffffffff;
        }
        else {
          iVar5 = (**(code **)(puVar18 + 0x299cc))(uStack_10c);
          if (iVar5 == 0) {
            ppppuVar8 = (undefined4 ****)0xffffffff;
            iVar1 = 0;
          }
          else {
            iVar1 = (**(code **)(puVar18 + 0x299cc))(uStack_108);
            if (iVar1 == 0) {
              ppppuVar8 = (undefined4 ****)0xffffffff;
            }
            else {
              ppppuVar2 = (undefined4 ****)(**(code **)(puVar18 + 0x29a08))(iVar5);
              if (ppppuVar2 == (undefined4 ****)0x0) {
                ppppuVar8 = (undefined4 ****)0xffffffff;
              }
              else {
                iVar7 = (**(code **)(puVar18 + 0x29998))(iVar1);
                if (iVar7 == 0) {
                  iVar7 = (**(code **)(puVar18 + 0x297dc))(iVar1);
                  if (iVar7 == 0) {
                    ppppuVar8 = (undefined4 ****)0xffffffff;
                  }
                  else {
                    ppppuVar8 = (undefined4 ****)(**(code **)(puVar18 + 0x298e4))(iVar7);
                  }
                }
                else {
                  ppppuVar8 = (undefined4 ****)0xffffffff;
                }
              }
            }
          }
        }
        goto LAB_0001eec0;
      }
    }
    (**(code **)(puVar18 + 0x299e8))(iVar1);
    (**(code **)(puVar18 + 0x29818))(uStack_104);
    (**(code **)(puVar18 + 0x29818))(pppuStack_100);
    iVar1 = 0;
    iVar5 = 0;
    ppppuVar8 = (undefined4 ****)0xffffffff;
  }
LAB_0001eec0:
  (**(code **)(puVar18 + 0x29910))(iVar5);
  (**(code **)(puVar18 + 0x29910))(iVar1);
  (**(code **)(puVar18 + 0x29818))(uStack_10c);
  (**(code **)(puVar18 + 0x29818))(uStack_108);
  (**(code **)(puVar18 + 0x299e8))(pcVar4);
  if (pcStack_fc == (char *)**(undefined4 **)(puVar18 + 0x299e0)) {
    return ppppuVar8;
  }
  pcVar20 = *(code **)(puVar18 + 0x299a4);
  pcVar14 = pcStack_fc;
  (*pcVar20)();
  pcVar19 = pcVar20 + 0x31068;
  iStack_144 = **(int **)(pcVar20 + 0x295f8);
  puVar10 = puVar6;
  iStack_140 = iVar1;
  iStack_13c = iVar5;
  pppuStack_138 = ppppuVar8;
  pcStack_134 = pcVar4;
  if (*pcVar14 != '/') {
    puVar15 = puVar6;
    if (puVar6 != (undefined4 *)0x0) {
      pcStack_14c = pcVar14;
      pcVar16 = (char *)0x0;
      goto LAB_0001f108;
    }
    pcStack_14c = (char *)canonicalize_filename_mode();
    pcVar16 = pcStack_14c;
    if (pcStack_14c != (char *)0x0) goto LAB_0001f108;
    puVar9 = (uint *)(**(code **)(pcVar20 + 0x294c4))();
    ppppuVar2 = (undefined4 ****)*puVar9;
    puVar10 = (undefined4 *)
              (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d20,5);
    uVar12 = quotearg_style(4,pcVar14);
    puVar6 = puVar10;
    (**(code **)(pcVar20 + 0x29558))(1,ppppuVar2,puVar10,uVar12);
  }
  puVar15 = puVar6;
  pcStack_14c = pcVar14;
  puVar6 = puVar10;
  pcVar16 = (char *)0x0;
LAB_0001f108:
  uStack_148 = 0;
  if (ppppuVar2 == (undefined4 ****)0x0) {
    iVar1 = MASKED(pcStack_14c,puVar6);
    (**(code **)(pcVar20 + 0x29600))(pcVar16);
    ppppuVar2 = (undefined4 ****)(uint)(iVar1 != -1);
  }
  else {
    iVar1 = xfts_open(&pcStack_14c,0x10,0);
    iVar5 = *(int *)(pcVar20 + 0x291b0);
    while (iVar7 = fts_read(iVar1), iVar7 != 0) {
      iVar7 = (*(code *)(iVar5 + -0x1730))(*(undefined4 *)(iVar1 + 0x18));
      ppppuVar2 = (undefined4 ****)((uint)ppppuVar2 & (uint)(iVar7 != -1));
    }
    piVar11 = (int *)(**(code **)(pcVar20 + 0x294c4))();
    iVar5 = *piVar11;
    if (iVar5 != 0) {
      uVar12 = (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d38,5);
      (**(code **)(pcVar20 + 0x29558))(0,iVar5,uVar12);
      ppppuVar2 = (undefined4 ****)0x0;
    }
    iVar1 = fts_close(iVar1);
    puVar15 = (undefined4 *)0x5;
    if (iVar1 != 0) {
      iVar1 = *piVar11;
      puVar15 = (undefined4 *)
                (**(code **)(pcVar20 + 0x295c8))(0,*(int *)(pcVar20 + 0x290a4) + 0x5d48,5);
      (**(code **)(pcVar20 + 0x29558))(0,iVar1,puVar15);
      ppppuVar2 = (undefined4 ****)0x0;
    }
    (**(code **)(pcVar20 + 0x29600))(pcVar16);
  }
  if (iStack_144 != **(int **)(pcVar20 + 0x295f8)) {
    pcVar20 = *(code **)(pcVar20 + 0x295bc);
    iVar1 = iStack_144;
    (*pcVar20)();
    ppppuVar8 = (undefined4 ****)qcopy_acl();
    if (ppppuVar8 == (undefined4 ****)&SUB_fffffffe) {
      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();
      uVar13 = *puVar6;
      uVar12 = quote(iVar1);
      (**(code **)(pcVar20 + 0x29290))(0,uVar13,*(int *)(pcVar20 + 0x28ddc) + 0x57f4,uVar12,pcVar19)
      ;
    }
    else if (ppppuVar8 == (undefined4 ****)0xffffffff) {
      puVar6 = (undefined4 *)(**(code **)(pcVar20 + 0x291fc))();
      uVar17 = *puVar6;
      uVar12 = (**(code **)(pcVar20 + 0x29300))(0,*(int *)(pcVar20 + 0x28ddc) + 0x5a30,5);
      uVar13 = quote(puVar15);
      (**(code **)(pcVar20 + 0x29290))(0,uVar17,uVar12,uVar13);
    }
    return ppppuVar8;
  }
  return ppppuVar2;
}

